您的位置:首页 > 其它

最大流增广路算法

2013-02-21 18:27 218 查看
算法名称复杂度概要
增广路方法

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­)每次检查具有最高标号的活跃结点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: