网络流学习注意事项
关于网络流中,残留容量(residual capacity),指的是一对定点,未说方向。在`3《算法设计技巧与分析》一书中,阐述如下:
定义 16.4:
给出一个G上的流f以及它的容量函数c,顶点对上f的剩余容量函数定义如下:对于每一对顶点u,v∈ V, r(u,v) = c(u,v) - f(u,v),流f的剩余图是一个具有容量r的有向图R=(V,Ef),其中
Ef ={(u,v)| r(u,v) > 0}
在此,较为著名的方法如Ford-Fulkerson方法。
输入:网络(G, s, t, c)
输出:G中的一个流
- 初始化剩余图,设R=G
- for边(u,v)∈ E
- f(u,v) <- 0
- end for
- while R中有一条增广路径p = s, …t
- 设 delta 为p的瓶颈容量
- for p中的每条边(u,v)
- f(u,v) <- f(u,v) + delta
- end for
- 更新剩余图R
- end while
在最短路径增值的启发式算法中,Edmonds和Karp提出的算法可让时间复杂度与输入值无关。
浙公网安备 33010602011771号