[学习笔记] 二分图基础定理的相关证明
最小點集覆蓋=最大匹配
最小點集覆蓋:選出最少的點使得每條邊都至少有一個端點被選。
-
先證最小點集覆蓋 ≥\ge≥ 最大匹配
假設最大匹配為 xxx,即有 xxx 條邊兩兩之間沒有公用點。
光覆蓋這些邊就要用到 xxx 個點。
“不少于”已證。
-
再證最小點集覆蓋 ≤\le≤ 最大匹配。
假設最小點集覆蓋為 xxx。那么這些點都至少能分別找到一條邊不共用頂點(不出現多對一的情況)。
因為如果一個點有兩條邊的對應端點都在最小點集覆蓋里面,且對應的兩個端點都只能找到這個點的邊,不如將兩個端點扔掉,將這個點加入。
只要每個端點都選擇一個這樣的邊,就必然能轉化為一個匹配數與點集覆蓋的點數相等的匹配方案。
所以最大匹配至少為最小點集覆蓋數。
“不大于”已證。
綜上,我們可以說最小點集覆蓋等于最大匹配。
最小不交路徑覆蓋=總點數-最大匹配數
最小不交路徑覆蓋:在有向無環圖中,選出最少的路徑數使得每個點都至少被遍歷一次,且路徑兩兩無交點。
對原圖(共 nnn 個點)中的每個點 iii 建立左部點 i1i_1i1? 和右部點 i2i_2i2? 。
若 x→yx\rightarrow yx→y 有邊,則在二分圖上連一條 x1→y2x_1\rightarrow y_2x1?→y2? 的邊。
原圖最小不交路徑覆蓋條數 =n?=n-=n? 新二分圖上的最大匹配數。
初始時將每個點都看成一條路徑,原圖如果兩點間有邊,那么就相當于可以用一條路徑覆蓋這兩個點,路徑數減一,對應二分圖上兩點間的一個匹配。
利用遞歸地思想,可以擴展出原圖的一條路徑拆成了若干個二分圖上的匹配。
二分圖上每個點只會匹配一次也就是只會對一條路徑產生減一的效果,這正好對應了“不交”的要求。
最小可交路徑覆蓋
floyd\text{floyd}floyd 傳遞閉包后建新圖,問題直接轉化為在新圖上的最小不交路徑覆蓋。
即,若 x→y→z?x→zx\rightarrow y\rightarrow z\Rightarrow x\rightarrow zx→y→z?x→z。
只要原圖兩個點之間有路徑可以到達就在二分圖上進行連邊。
這樣雖然跑出來 x?zx-zx?z 的一條匹配邊,但其實在原圖上是經過了 yyy 點的,由于“可交”仍然起到了將 xxx 和 zzz 路徑合并減少一條的效果。
最大獨立集=總點數-最小覆蓋集
最大獨立集:選出若干個點使得點兩兩之間沒有邊相連。
最小覆蓋集:就是最小點集覆蓋。
顯然,最大獨立集 +++ 最大匹配 === 總點數。
如果不是最大匹配,也就是說剩下的點集中存在兩個點之間有邊相連,不符合最大獨立集定義,匹配就要 +1+1+1,去掉兩個點中的任意一個。
因為最小覆蓋集等于最大匹配。
結論得證。
最大點權獨立集=總權值-最小點權覆蓋集=總權值-最小割
最大流等于最小割。
證明類比上面。
總結
以上是生活随笔為你收集整理的[学习笔记] 二分图基础定理的相关证明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 理想计划年底向用户推送 AD Max 3
- 下一篇: [学习笔记] 二次剩余