网络流学习注意事项

关于网络流中,残留容量(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中的一个流

  1.   初始化剩余图,设R=G
  2. for边(u,v)∈ E
  3.   f(u,v) <- 0
  4. end for
  5. while R中有一条增广路径p = s, …t
  6.   设 delta 为p的瓶颈容量
  7.   for p中的每条边(u,v)
  8.     f(u,v) <- f(u,v) + delta
  9.   end for
  10.   更新剩余图R
  11. end while

  在最短路径增值的启发式算法中,Edmonds和Karp提出的算法可让时间复杂度与输入值无关。

  

 

  

posted @ 2012-10-21 21:50  心似飞鸿  阅读(259)  评论(0)    收藏  举报