網路流學習筆記1——二分圖
阿新 • • 發佈:2019-01-10
注:本系列學習筆記大部分是根據zhhx dalao的講課課件來寫的(然後加上了蒟蒻的一些小yy以及題目解析),在此對zhhx表示深深的謝意!
PART1 一些概念與模型
二分圖最大匹配
就是一個二分圖中最多能夠匹配的對數。
建立一個源點S,一個匯點T,S點向左點集X連邊,右點集Y向T點連邊,兩個點集間從左向右連邊,容量都是1,求最大流即可。
很顯然一個流就代表一個匹配
(求最大流的演算法主要是KM(\(N*M^2\)),dinic演算法(\(M*N^2\))。dinic演算法求二分圖最大匹配的時間複雜度是\(M*\sqrt N\))
二分圖最大權匹配
別的和最大匹配一樣,但是給X到Y的邊加費用為對應的邊權,然後求S到T的最大費用流(注意這裡不是最大費用最大流,因為那個是要求在最大流基礎上的最大費用,可能就不是全域性最大費用了)
二分圖最小點覆蓋
就是選出來最少數量的點,使得這些點所連線的邊的並集覆蓋掉所有的邊。
定理:最小點覆蓋=最大匹配
證明:首先,對於flow個最大匹配,每個匹配都需要一個點,也就是最少需要flow個點,實際上最多也是隻需要flow個點,選了flow個點後,還有一條邊兩端的點都不在這個點集中說明還可以增廣,這就和最大流的假設違背了。
二分圖最小點權覆蓋集
定理:最小點權覆蓋=最小割=最大流
證明:S-X和Y-T的連對應點權容量的邊, X-Y的連容量inf的邊,然後求最小割,首先中間的邊不會被割,也就是左右邊的邊選一些割掉(左右選一些點作為覆蓋點)。
二分圖最大獨立集
在二分圖中選出來一些點,使得這些點兩兩之間都沒有邊相連。
定理:
yy的證明:一條邊只有兩個點,如果排除這些最小點覆蓋的集合,顯然每條邊只剩下剩下的那個點。這些點只有通過邊才能與其他點相連,但是它們相連的邊上的另外一點都已經被排除,所以相當於它們“與世隔絕”,所以這些點集就是最大獨立集的數量。
最大點權獨立集
定理:總點權-最小割
yy的證明:正難則反,這個東西肯定是總點權減去一個什麼值,然後這個值還要儘可能小,而且減去這個東西后還要保證留下來的點兩兩之間互不到達。將這個圖斷開的最小代價就是最小割了,所以自然減去的東西就是最小割了qwqwq
小結:
二分圖最大匹配=二分圖最小點覆蓋=最小割=最大流=n-最大獨立集。
二分圖最小權覆蓋 和 二分圖最大權獨立集 互補。
DAG最小路徑覆蓋(不相交)
DAG最小路徑覆蓋(可相交)
霍爾定理
霍爾定理拓展
PART2 一些題目練習
啊。。終於弄完了知識點。。。下面來練幾道題吧