这是最大匹配的一个重要理论。
- 交错路(alternating path) 始于非匹配点且由匹配边与非匹配边交错而成。
- 增广路(augmenting path)是始于非匹配点且终于非匹配点的交错路。
增广路上非匹配边比匹配边数量多一,如果将匹配边改为未匹配边,反之亦然,则匹配大小会增加一且依然是交错路。
如图 匹配数从 2 增加为 3,我们称此过程为 增广。
根据 Berge's lemma 当找不到增广路的时候,得到最大匹配。
由此定理可知我们求最大匹配的核心思路。
!!! 核心思路 枚举所有未匹配点,找增广路径,直到找不到增广路径。
事实上,对于每个点只要枚举一次就好,证明如下:
假设某一轮沿着增广路