什麼是流(flow):
在一個有向圖中,只有出去的邊沒有進來的邊的節點叫作源(source),只有進來的邊沒有出去的邊的節點叫作匯(sink),其它的節點進來的邊和出去的邊應該是平衡的。
邊上能夠加權值,假設對於一個交通圖來講,能夠認爲邊上的權重爲一條道路上的最大流量。那麼對於圖中任意兩個節點來講,它們之間能夠存在不少路徑,每條路徑上能夠負載的最大流量應該是這條路徑上權重最小的那條邊所能承載的流量(聯想一下「瓶頸」這個詞,或者木桶理論),那麼全部的路徑上所負載流量之和也就是這兩個節點之間多能經過的最大流了。
關於最小割的定義:
首先來解釋割集
在一個有權圖中,源點爲Vs,匯點爲Vt,從Vs到Vt有不少路徑能夠走,每條路徑都包含若干條邊對吧。這些邊可能只屬於一條路徑,也可能同時出如今兩條路徑中。 若是拿掉這張圖中的一些邊,就沒法從Vs到達Vt,這些邊的組合就叫作 割集。
最小割的解釋:
割集有不少,每個割集中元素的權值之和成爲割集容量。 全部割集容量中,最小的那個割集就叫作最小割。
最大流最小割定理(max flow/min cut theory):對於任意一個只有一個源和一個匯的圖來講,從源到匯的最大流等於最小割。