EK算法的核心
  反复寻找源点 s 到汇点 t 之间的增广路径,若有,找出增广路径上每一段的最小值delta,若无,则结束。
  寻找增广路径时用BFS来找,并且更新残留网的值。
  找到delta后,则使最大流值加上delta,更新为当前最大的最大流值。

  更详细的到:http://www.cnblogs.com/zsboy/archive/2013/01/27/2878810.html

  SAP算法
  1.首先设 h 数组,h[i]表示节点 i 到汇点经过的最少路径数;
  2.在一次寻找可行路径的过程中,若此时已到达 i 点,对于< i , j >,若h[i]=h[j]+1,则j为可选点,这样可保证每次找到的到达t的路径所经过的边数是最少的;
  3.某时刻,在到达i处,不存在<i , j>,使得h[i]=h[j]+1,则修改h[i],设i的所有后继的最小h为t,则修改h[i]=t+1;
  4.设num[x]为h[]值为x的点的个数。对于一点i,在修改h[i]时,若num[h[i]]=1则停止。因为修改了h[i],num[h[i]]=0,h[i]的值变大了,没有了大小为h[i]的,出现断层,永远不能到达汇点。

  算法流程:

  (1).从源点s开始,找下一个节点p,使得h[s]=h[p]+1,找到继续找p的下一个节点,到达汇点t时转(3),否则转(2);
  (2).修改h[s]的值,重新到1;
  (3).根据本次找到的路径修改路径上的流量和反向边的流量,设最小流量的边为<u,v>,则下一次找路径时,从u开始向汇点找。

  sap算法详解及模板:http://blog.csdn.net/liguanxing/article/details/5783804

最新文章

  1. 【前端积累】JavascriptUtil 字符串部分
  2. struts2执行流程
  3. Android自动化学习笔记之MonkeyRunner:MonkeyRunner的录制和回放
  4. 15.linux 中无法输入指令
  5. websphere如何删除应用程序服务器(概要管理工具)
  6. IE9或以上的浏览器flash值为空时,导致domready不触发
  7. ASP.Net页面刷新后自动滚动到原来位置
  8. windows电脑变成wifi热点命令
  9. 镜头覆盖范围FOV 的规划与FOV去四角
  10. struts2+hibernate+spring+jquery返回json List列表
  11. jQuery技术内幕电子版5
  12. navBar
  13. 重构第四天 : 用多态替换条件语句(if else &amp; switch)
  14. 段落排版--中文字间距、字母间距(letter-spacing, word-spacing)
  15. Unity调试中心
  16. 封装fastjson为spring mvc的json view
  17. Python单元测试:unittest使用简介
  18. SDI接口
  19. HDU 1686 Oulipo(KMP+计算匹配成功次数)
  20. 简学Python第七章__class面向对象高级用法与反射

热门文章

  1. 7-05. 魔法优惠券(25) (数学 ZJU_PAT)
  2. Eclipse上GIT插件EGIT使用
  3. Unity 利用NGUI2.6.3做技能冷却的CD效果
  4. 关于Console的Main(String[] args)参数输入
  5. dom处理配置文件_待完善
  6. 使用 Struts 2 实现国际化
  7. html5新增结构元素
  8. Android TextView 手动上下滑动
  9. oc对象互相引用内存释放解决方案
  10. relatedTarget, fromElement, toElement