美文网首页
网络流专题

网络流专题

作者: Joseph_Z | 来源:发表于2017-07-16 20:26 被阅读0次

求最大流:

       求最大流的过程,就是不断找到一条源到汇的路径,然后构建残余网络,再在残余网络上寻找新的路径,使总流量增加,然后形成新的残余网络,再寻找新路径…..直到某个残余网络上找不到从源到汇的路径为止,最大流就算出来了。重要的一点就是建立反向边。

Edmonds-Karp 最短增广路算法:

      先用BFS找到从源点到汇点的最短可行路径,并记录每个点的前驱点和路径上最小的流量值,然后反向从汇点到源点的边把最小流量值减去的同时加上反向边,不断这样找,直到找不到路时就结束,把所求的最小流量值加起来就得到最大流。

Dinic 快速网络流算法:

先利用BFS对残余网络分层,分完层后,从源点开始,用DFS从前一层向后一层反复寻找增广路(即要求DFS的每一步都必须要走到下一层的节点),复杂度为O(n^2m)。

有源上下界网络最大流:

      先对原图把所有下界通过两个超级汇点st-ed替换,原图的流量就是上界-下界,然后加上一条流量无穷大的t-s边,求出最大流,求出s汇点的流出的量记录为sum1并检查超级汇点的流量是否流满,如果满流,就满足下界的条件,然后把超级汇点、所连的边和无穷大的t-s的边删除,然后再求一次s-t的最大流,记录为sum2,最后满足条件的最大流就是sum1+sum2;如果不满足,就不能求出满足题意的最大流。

相关文章

  • 网络流专题

    求最大流: 求最大流的过程,就是不断找到一条源到汇的路径,然后构建残余网络,再在残余网络上寻找新的路径,使总...

  • 网络专题

    2019Android网络编程总结 1.网络分层 OSI七层模型OSI七层协议模型主要是:应用层(Applicat...

  • 网络流

    最大流与最小割 POJ 3713: Transferring Sylla网络流暴力做法:枚举起点终点作为源点和汇点...

  • 一文快速实现微信公众号支付功能(详细版,建议收藏备用)

    进阶架构精品专题 Mysql优化专题(★★★★) 网络协议专题(★★★★) 其余18大专题,请在主页菜单栏查看 后...

  • 网络编程专题

    1 InetAddress类 2 基于Socket的TCP编程 2.1 使用字节流,完成C/S的通讯过程 serv...

  • Flink网络流控及反压剖析

    [TOC] 网络流控的概念与背景 为什么需要网络流控 首先我们可以看下这张最精简的网络流控的图,Producer ...

  • 网络流 模板

    Dinic+当前弧优化 O(n^2m) 链式前向星的下标要从偶数开始,head初始化为-1 最小费用最大流 hea...

  • 图论---网络流

    最大流 EdmondsKarp bfs找路,途中记录前驱节点让后从汇点遍历到起点,找到最小flow再次遍历,更新沿...

  • 光流估计网络---FlowNet2.0

    光流估计网络---FlowNet1.0 光流估计网络---FlowNet2.0 论文地址:FlowNet 2.0:...

  • 购书记录

    20200701:数据中心/网络专题Python网络编程网络是怎样连接的Wireshark网络分析就这么简单云计算...

网友评论

      本文标题:网络流专题

      本文链接:https://www.haomeiwen.com/subject/qhrxkxtx.html