二分图最大匹配算法:匈牙利、KM

本文详细介绍了二分图最大匹配算法,包括基础概念如匹配、二分图和增广路,以及匈牙利算法和KM算法的原理和步骤。匈牙利算法用于饱和X的匹配,而KM算法则用于求解最大权匹配。重点讨论了相等子图及其性质,并证明了KM算法的正确性。这两种算法在解决图论问题中起到关键作用。
摘要由CSDN通过智能技术生成

基础定义

匹配

  • 匹配:给定一个无向图 G = < V , E > G=<V,E> G=<V,E>一个匹配是一个边的子集合 M ⊆ E M\subseteq E ME,且满足对所有顶点 v ∈ V v\in V vV M M M中至多有一条边与 v v v关联。对匹配 M M M中的每条边 e = ( u , v ) e = (u,v) e=(u,v),其两端点 u u u v v v称为被匹配M所匹配,而 u u u v v v都称为是M饱和的。
  • 最大匹配:图G中含边数最多的匹配称为G的最大匹配
  • 完美匹配:如果G中每个点都是M饱和的,则称M是G的完美匹配

二分图

  • 二分图(二部图):G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边<i,j>所关联的两个顶点i和j分别属于这两个不同的顶点集,则称图G为一个二分图。
    满足下面的无向图 G = < V , E > 有非空集合 X , Y : X ∪ Y = V , X ∩ Y = ∅ 且每条边 { v i , v j } ∈ E 都有 : v i ∈ X ∧ v j ∈ Y 或者 v i ∈ Y ∧ v j ∈ X 称为二分图 ( b i p a r t i t e   g r a p h ) 可以用 G = < X , E , Y > 表示二分图 \begin{array}{l} 满足下面的无向图G=<V,E>\\ 有非空集合X,Y:X\cup Y=V,X\cap Y=\varnothing\\ 且每条边\{v_i,v_j\}\in E 都有:\\ v_i\in X\wedge v_j\in Y或者v_i\in Y\wedge v_j\in X\\ 称为二分图(bipartite\ graph)\\ 可以用G=<X,E,Y>表示二分图 \end{array} 满足下面的无向图G=<V,E>有非空集合X,Y:XY=V,XY=且每条边{ vi,vj}E都有:viXvjY或者viYvjX称为二分图(bipartite graph)可以用G=<X,E,Y>表示二分图

  • 图G是二分图$\iff $图G至少有两个顶点,而且G中所有回路的长度都是偶数

    证明:
    必要性
    只有一个点不够二分,故至少有两个顶点。回路的边数和顶点数相同 不失一般性,设一回路从 X 部出发,则下一顶点在 Y 部, 回路上的顶点 X 、 Y 部交替,故 X 部点的数量与 Y 部点数量相同。 顶点数是偶数,边的数量也是偶数 \begin{array}{l} 只有一个点不够二分,故至少有两个顶点。回路的边数和顶点数相同\\ 不失一般性,设一回路从X部出发,则下一顶点在Y部,\\回路上的顶点X、Y部交替,故X部点的数量与Y部点数量相同。\\ 顶点数是偶数,边的数量也是偶数 \end{array} 只有一个点不够二分,故至少有两个顶点。回路的边数和顶点数相同不失一般性,设一回路从X部出发,则下一顶点在Y部,回路上的顶点XY部交替,故X部点的数量与Y部点数量相同。顶点数是偶数,边的数量也是偶数

    充分性
    任意取顶点 v , 取 V 1 = { v i ∣ v i 与 v 的距离为偶数 } , V 2 = V − V 1 , 证明 V 1 , V 2 内部顶点间没有边 ( 反证法 ) 如果有边 { v i , v j } ∈ E v i , v j ∈ V 1 那么 v 到 v i , v j 距离都是偶数 , v → v i → v j → v 这个 回路的长度是奇数 , 和条件矛盾 , V 2 同理 所以 G 是个二分图 < V 1 , E , V 2 > \begin{array}{l} 任意取顶点v,取V_1=\{v_i|v_i与v的距离为偶数\},\\ V_2=V-V_1,证明V_1,V_2内部顶点间没有边(反证法)\\ 如果有边\{v_i,v_j\}\in E\quad v_i,v_j\in V_1\\ 那么v到v_i,v_j距离都是偶数,v\rightarrow v_i\rightarrow v_j \rightarrow v这个\\ 回路的长度是奇数,和条件矛盾,V_2同理\\ 所以G是个二分图<V_1,E,V_2> \end{array} 任意取顶点v,V1={ viviv的距离为偶数},V2=VV1,证明V1,V2内部顶点间没有边(反证法)如果有边{ vi,vj}Evi,vjV1那么vvi,vj距离都是偶数,vvivjv这个回路的长度是奇数,和条件矛盾,V2同理所以G是个二分图<V1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Shilong Wang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值