一.無源匯有上下界可行流
1.假設所有邊都流滿下界,將原邊流量變為上界-下界
2.發現有的點流量不守恆,這樣我們就要給它補流或導流。
3.新建源點和匯點,對於在下界中的流 流入》流出 的點為它匯出 流入-流出 的流,否則為其補上 流出-流入 的流。
4.在新建出的圖中跑最大流,如果新加的所有邊都滿流則可行。
二.有源匯有上下界可行流
1.新增一條從匯到源,下界為0,上界為inf的邊
2.轉變為無源匯有上下界可行流。
3.可行流流量=t-s無窮邊跑出的流量
三.有源匯有上下界最大流
1.跑出有源匯有上下界可行流
2.在殘量網路上跑出s-t最大流
3.總的最大流=可行流+ s-t最大流
四.有源匯有上下界最小流
1.跑出有源匯有上下界可行流
2.在殘量網路上跑出t-s最大流
3.最小流=可行流- t-s最大流
五.有源匯有上下界費用流
1.按照有源匯可行流建圖
2.跑出ss-tt費用流即為答案
六.最小割樹
定義:定義一棵樹t為最小割樹,如果對於樹上的所有邊(s,t),樹上去掉(s,t)後產生的兩個集合恰好是原圖上(s,t)的最小割把原圖分成的兩個集合,且邊(u,v)的權值等於原圖上(u,v)的最小割
構造:1.在當前點集中隨意選取兩個點,求出它們在原圖上的最小割,連線兩點的邊權即為它們的最小割
2.最小割將當前點集割為兩個集合,遞迴處理。
查詢:原圖上u,v兩點最小割就是最小割樹上u到v的路徑上權值最小的邊
網路流概念及相關演算法介紹
一 引言 如同我們可以把乙個實際的道路地圖抽象成乙個有向圖來計算兩點之間的最短路徑,我們也可以將乙個有向圖看作乙個流網路來解決另一型別的問題。流網路比較適合用來模擬液體流經管道 電流在電路網路中的運動 資訊網路中資訊的傳遞等等類似的過程。二 網路流和最大流問題 參看下圖,給定乙個有向圖g v,e 把...
網路流演算法
問題描述 如圖4 1所示是聯結某產品地v1和銷售地v4的交通網,每一弧 vi,vj 代表從vi到vj的運輸線,產品經這條弧由vi輸送到vj,弧旁的數表示這條運輸線的最大通過能力。產品經過交通網從v1到v4。現在要求制定乙個運輸方案使從v1到v4的產品數量最多。圖 4 1 圖 4 2 一 基本概念及相...
網路流演算法
ek演算法模板 演算法複雜度 n m m n為點數,m為邊數 源點 1,匯點 n。const int maxn 310,inf 0x7fffffff int pre maxn mat maxn maxn bool vis maxn int n,m int augment else q.push ba...