最小点覆盖=最大匹配证明
1.最大匹配里的邊,每一條邊都需要使用頂點覆蓋,也就是說最小點覆蓋大于等于最大匹配數(shù)
2.我們?nèi)稳∫粋€最大匹配,將在最大匹配內(nèi)的點染成藍(lán)色,不在最大匹配內(nèi)的點染成黑色
顯然,不可能有邊的兩個端點都是黑色,也就是說每條邊都至少有一個藍(lán)色點.
我們只需選擇藍(lán)色點即可,考慮在每條匹配邊中只選一個藍(lán)點。
選擇藍(lán)點的方法如下:
如果存在一個端點與黑色點直接相連,那么我們選擇這個藍(lán)色點,否則隨便選擇一個點即可,這樣我們就構(gòu)造了一種大小為最大匹配的最小點覆蓋。
注意如果存在下面的情況,則我們需要在1--2這條邊中同時選擇兩個藍(lán)色點來蓋住黑色點。但下面這種情況是不存在的。
1--2是匹配邊,1,2點均是藍(lán)色
3,4都是未匹配點,1-4,2-3是未匹配邊
因為如果是這樣的話,就會存在增廣路。
綜上:最小點覆蓋=最大匹配
以上構(gòu)造方式是錯誤的,某老師的課件上出了錯。如下例中,選出1,2,C三個點來進(jìn)行覆蓋,發(fā)現(xiàn)2--B這條邊蓋不住。
首先,因為最大匹配是原二分圖邊集的一個子集,并且所有邊都不相交。
所以至少要從每條匹配邊中選出一個端點,于是最小點覆蓋包含的點數(shù)不可能小于最大匹配包含的邊數(shù)。于是如果對任意二分圖構(gòu)造一組點覆蓋,其包含的點數(shù)等于最大匹配,即可證明
構(gòu)造方法如下:
1:求出最大匹配
2:從左部每個非匹配點出發(fā),再執(zhí)行一次DFS找增廣路的過程(一定會失敗,也就是說走出一條長度為偶數(shù),且非匹配邊與匹配邊交錯的路徑),標(biāo)記所有訪問過的節(jié)點。下例中紅色為匹配邊,從未匹配點4出發(fā),走出如下路徑(4---C---3---B---2)
3:取左部沒有打上標(biāo)記的點,右邊打上標(biāo)記的點,得到最小點覆蓋。下例中取出左部的1號點,右部的C,B兩個點。
證明其正確性,經(jīng)過上述構(gòu)造方法
1:左邊的非匹配點一定都被標(biāo)記,因為它們是出發(fā)點。
2:右邊非匹配點一定沒有被標(biāo)記,否則找到增廣路
3:一對匹配點要么都被標(biāo)記,要么沒有被標(biāo)記,因為在在找增廣路的過程中,左部匹配點只能通過右部到達(dá)(例如上例中c--3這條匹配邊,兩個點都被標(biāo)記,A--1這條匹配邊,兩個點都沒有被標(biāo)記)
在構(gòu)造中,我們?nèi)∽蟛繘]有被標(biāo)記的點,右邊被標(biāo)記的點,根據(jù)上面討論可知,正好是每條匹配邊取了一個點,于是選出來的點數(shù)等于最大匹配的邊數(shù)。(例如上例中4--C--3--B--2,我們選擇了C,B這兩個點,當(dāng)然還有個1號點要取)
再來討論這種取法是否覆蓋了所有的邊
1:匹配邊一定被覆蓋,因為正好有一個端點被取走
2:不存在連接兩個非匹配點的邊,否則就有長度為1的增廣路
3:連接左部非匹配點i,右邊匹配點J的邊,因為i是出發(fā)點,所以j一定被訪問,而我們?nèi)×擞也克斜粯?biāo)記的點,所以這樣的邊被覆蓋
4:連接左部匹配點i,右邊非匹配點J的邊,,這樣的i一定沒有被訪問,否則再走到J就找到增廣路。而我們?nèi)×俗筮吽形幢粯?biāo)記的點,于是這樣的邊也被覆蓋。
https://blog.csdn.net/qq_38956769/article/details/80238896
總結(jié)
以上是生活随笔為你收集整理的最小点覆盖=最大匹配证明的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 请问煞位具体在什么位置?我这是两间屋。谢
- 下一篇: 申请SSL证书