图论-最大二分匹配
最大二分匹配问题
给定一个无向图G=(V,E)G=(V,E)G=(V,E),一个匹配是边的一个子集M⊆EM \subseteq EM⊆E,使得对于所有节点v∈Vv \in Vv∈V,子集MMM中最多有一条边与节点vvv相连。如果子集MMM中的某条边与节点vvv相连,则称节点vvv由节点MMM所匹配。否则,节点vvv就是没有匹配的。最大匹配是最大基数匹配,即对于任意匹配M′M'M′,最大匹配∣M∣≥∣M′∣|M| \geq |M'|∣M∣≥∣M′∣。这个匹配MMM被称为最大匹配。\
二分图,我们将注意力集中在寻找二分图的最大匹配上。在一个二分图中,节点集合可以被分成LLL与RRR,并且V=L∪RV = L \cup RV=L∪R,其中LLL和RRR是不相交的,并且边的集合EEE中所有的边都横跨LLL与RRR。
寻找最大二分匹配
我们将所有的边改成有向边,都从LLL指向RRR,并且我们设立一个源节点sss,指向LLL,设立汇点ttt,RRR都指向ttt,并且令边的容量都是单位1。此时我们建立了一个流网络。
定理:对于任意一个匹配MMM,二分图所对应的流网络中都存在一个流fff,使得∣f∣=∣M∣|f| = |M|∣f∣=∣M∣,反之也成立。
定理(完整性定理):如果在一个流网络中,容量只取整数,那么Ford-Fulkerson方法在每一次迭代计算出的流fff,∣f∣|f|∣f∣是整数,并且对于所有的u,v∈Vu,v \in Vu,v∈V,f(u,v)f(u,v)f(u,v)也是整数。
推论:对于最大二分匹配MMM,二分图所对应的流网络中最大流fff,有∣f∣=∣M∣|f| = |M|∣f∣=∣M∣,反之也成立。
推论告诉我们,想找到一个最大匹配,我们只需要求一下最大流即可。

本文探讨了图论中的最大二分匹配问题,重点在于如何通过转换为流网络来解决这一问题。最大二分匹配要求在无向图中找到最大的边子集,使得每个节点最多被一条边连接。通过将二分图转化为有向流网络,可以利用Ford-Fulkerson方法寻找最大流,从而确定最大匹配。完整性定理保证了这种方法的有效性,即最大匹配与最大流的大小相等。因此,寻找最大匹配可以简化为求解网络最大流问题。
2904

被折叠的 条评论
为什么被折叠?



