刷了一天最大流的題,都快刷暈了,,3d
簡單總結幾個模型吧。blog
大部份內容來自學姐的PPTim
一個很是有用的思想
限流 將對點的限制轉化爲對邊的限制d3
這個還沒看到經驗
最小割==最大流總結
一條增廣路中,必有一條邊滿流,滿流的流量即爲這條增廣路的流量,那麼刪除滿流的這條邊便可阻斷一條增廣路。刪去一些邊使源匯不連通即阻斷全部的增廣路,代價之和即爲最大流。img
最大流=最小割 你能想到什麼?集合
大與小的轉換
留下最多與拿走最少的轉換
最大收益與最小損失的轉換
選最優與不選最差的轉換co
何時轉換?
憑直覺,看經驗自學
最大流,每條增廣路流量其實是增廣路上的最小流量
不會割掉不合法方案
使不合法方案通過inf邊,從而保證割出的方案合法
還沒看
點覆蓋集是無向圖 的一個點集,使得該圖中全部邊都至少有一個端點在該集合內。
最小點覆蓋集是在無向圖中,點數最少的點覆蓋集。
最小點權覆蓋集是在帶點權無向圖中,點權之和最小的點覆蓋集。
最小點覆蓋集=二分圖最大匹配數
證實:
邊分爲匹配邊和未匹配邊
未匹配邊必定至少有一個點被選中,不然會增長一個新的匹配,與最大匹配不符
最小點權覆蓋=二分圖最小割
證實:
把每個匹配看作一條增廣路,那麼就是選一些點,使剩下的點兩兩之間沒法連通,即割一些點使圖不連通,即最小割
點獨立集是無向圖 的一個點集,使得任兩個在該集合中的點在原圖中都不相鄰。
最大點獨立集是在無向圖 中,點數最多的點獨立集。
最大點權獨立集是在帶點權無向圖中,點權之和最大的點獨立集。
最大點獨立集=V-最小點覆蓋集
最大點獨立集=V-二分圖最大匹配數
證實:
一、當刪去最小覆蓋集時,剩下的點必定不會有連邊,即剩下的點在原圖中必定不相鄰,因此最大點獨立集至少包含非最小點覆蓋集的全部點
二、點覆蓋集已是最小,即最小點覆蓋集中若是再刪去點v,v必將和獨立集中的點有邊相連,不符合獨立集的概念,因此最大點獨立集至多包含非最小點覆蓋集的全部點
三、綜上所述,最大點獨立集=V-最小點覆蓋集
最大點權獨立集=總點權-最小點權覆蓋集
最大點權獨立集=總點權-二分圖最小割
最大流——最小割
最大點獨立集——最小點覆蓋集
路徑覆蓋就是在一個DAG(有向無環圖)中找一些路經,使之覆蓋了圖中的全部頂點,且任何一個頂點有且只有一條路徑與之關聯。
最小路徑覆蓋就是最少的路徑條數的路徑覆蓋。
最小路徑覆蓋=V-二分圖最大匹配數
證實:
若匹配數爲0,由於每一個點都是一條路徑,因此最小路徑覆蓋數爲V;
當有一個匹配出現時,路徑數就減1
邊覆蓋集是無向圖的一個邊集,使得該圖中全部頂點都至少是集合內邊的一個端點。
最小邊覆蓋集是在無向圖中,邊數最少的邊覆蓋集。
最小邊覆蓋=最大點獨立集
有向圖的閉合子圖是一個點集,該點集的全部出邊都還指向該點集
閉合子圖中,點權和最大的點集稱爲最大權閉合子圖
正點權和-最小割
沒看
沒看