技术类网络流.pptxVIP

  • 3
  • 0
  • 约8.29千字
  • 约 64页
  • 2022-03-04 发布于北京
  • 举报
网络流算法北京大学信息学院 郭炜本讲义部分内容引自李晔晨叶天扬斯文俊等同学的讲义给定一个有向图G=(V,E),把图中的边看作管道,每条边上有一个权值,表示该管道的流量上限。给定源点s和汇点t,现在假设在s处有一个水源,t处有一个蓄水池,问从s到t的最大水流量是多少解决最大流的Ford-Fulkerson算法基本思路很简单,每次用dfs从源到汇找一条可行路径, 然后把这条路塞满。这条路径上容量最小的那条边的容量,就是这次dfs所找到的流量。然后对于路径上的每条边,其容量要减去刚才找到的流量。这样,每次dfs都可能增大流量,直到某次dfs找不到可行路径为止,最大流就求出来了这个想法是否正确?a100100s100t100100b如果我们沿着s-a-b-t路线走 仅能得到一个100的流a实际上此图存在流量为200的流100100s100t100100b问题出在过早地认为边a → b上流量不为0,因而“封锁”了流量继续增大的可能。一个改进的思路:应能够修改已建立的流网络,使得 “不合理”的流量被删掉。一种实现:对上次dfs时找到的流量路径上的边,添加一条“反向”边,反向边上的容量等于上次dfs时找到的该边上的流量,然后再利用“反向”的容量和其他边上剩余的容量寻找路径。a0100第一次dfs后:s0t1000b第一次dfs后,添加反向边得到的新图:a100100s100t100100b这样我

文档评论(0)

1亿VIP精品文档

相关文档