最大流增广路算法

算法名称复杂度概要
增广路方法

 

Augmenting path method (Ford Fulkerson method)

一般增广路算法

 

Labeling algorithm

O(nmU)在残留网络中,每次任意找一条增广路径增广。
容量缩放增广路算法

 

Capacity scaling algorithm

O(nm logU)在残留网络中,每次找一条有最大可增广容量和的增广路径增广,即残留网络中源到汇的最长路。
最短增广路算法

 

Shortest augmenting path

algorithm (Edmonds Karp

algorithm)

O(nm­­2­)在残留网络中,每次找一条含结点数最少的增广路增广,即残留网络中源到汇的BFS 路径。
连续最短增广路算法

 

Successive shortest

augmenting path algorithm

(Dinic algorithm)

O(n­­2­m) Edmonds Karp 的基础上改造。在每次BFS 找增广路时,记录每个点的距离标号。在距离标号的所构成的最短路图上,不断地 DFS找增广路。即一次标号多次增广,以提高速度。
预流推进方法

 

Preflow-push method

一般预流推进算法

 

Generic preflow-push

algorithm

O(n­­2­m)维护一个预流,不断地对活跃结点执行push操作或relabel操作来调整这个预流,直到不能操作。
先进先出预流推进算法

 

FIFO preflow-push algorithm

O(n­­3­)以先进先出队列维护活跃结点。
最高标号预流推进算法

 

Highest-label preflow-push

algorithm (Relabel-to-Front

algorithm)

O(n­­2­m­­1/2­)每次检查具有最高标号的活跃结点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值