对最大流算法Ford.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
对最大流算法Ford

对最大流算法Ford_Fulkerson的研究与理解 自己学习《图论》的基础算法,终于走到最大流的地盘了 呵呵……我可是足足整了三天啊!!! ?? 开始看ppt,讲述Ford_Fulkerson,尽管这个算法已经被更加优秀的Edmonds-Karp算法所取代。我研究这个算法的目的其实在于Edmonds-Karp算法,没办法,谁叫Edmonds-Karp算法是由Ford_Fulkerson改进过来的呢! ?? 把ppt看懂过后就自己上代码了。结果真的是让人崩溃:有向图,流竟然可以回退!意味着有向图必须用无向图的思路来考虑! ??我自己写代码,优先考虑的是DFS。因为我觉得既然是从起点到汇点。DFS比较快嘛!我傻糊乎乎的照搬ppt上面的实现过程,把边提取出来,用一个类记录边的信息,然后用DFS去搜索,边搜边改。导致的结果是我连续改版了8次,一步步跟踪调试,当然注定是失败的!尽管最后都没成功,却让我一点一点清晰地理解了这个算法的实现过程! 最后决定研究别人的代码了,不管三七二十一,先把代码贴出来吧! 希望不会有盗用代码之嫌! package?com.xh.Ford_Fulkerson; ? ? import?java.util.LinkedList; ? import?java.util.Queue; ? import?java.util.Scanner; ? ? /* ? ?*?6?10????//?6?nodes,?10?edges ? ?0?1?16??//?capacity?from?0?to?1?is?16 ? ?0?2?13??//?capacity?from?0?to?2?is?13 ? ?1?2?10??//?capacity?from?1?to?2?is?10 ? ?2?1?4???//?capacity?from?2?to?1?is?4 ? ?3?2?9???//?capacity?from?3?to?2?is?9 ? ?1?3?12??//?capacity?from?1?to?3?is?12 ? ?2?4?14??//?capacity?from?2?to?4?is?14 ? ?4?3?7???//?capacity?from?4?to?3?is?7 ? ?3?5?20??//?capacity?from?3?to?5?is?20 ? ?4?5?4???//?capacity?from?4?to?5?is?4? ? ?*/? public?class?Ford_Fulkerson09?{ ? ? ????private?int?capacity[][]; ? ????private?int?flow[][]; ? ????private?boolean?visited[]; ? ????private?int?pre[];//通过pre记录了路径 ? ????private?int?nodes; ? ????static?int?count=0; ? ????static?int[][]?map?=?{?{?0,?2,?9,?3,?0?},//?三条边 ? ????????????{?0,?0,?7,?0,?8?},//?两条边 ? ????????????{?0,?6,?0,?4,?0?},//?两条边 ? ????????????{?0,?0,?0,?0,?5?},//?一条边 ? ????????????{?0,?0,?0,?0,?0?}?// ? ????}; ? ? ????public?Ford_Fulkerson09(int[][]?capacity,?int?nodes)?{ ? ????????this.capacity?=?capacity; ? ????????this.nodes?=?nodes; ? ????????this.flow?=?new?int[nodes][nodes]; ? ????????this.pre?=?new?int[nodes]; ? ????????this.visited?=?new?boolean[nodes]; ? ????} ? ? ????public?int?maxFlow(int?src,?int?des)?{ ? ????????int?maxFlow?=?0; ? ? ????????for?(int?i?=?0;?i??nodes;?i++) ? ????????????for?(int?j?=?0;?j??nodes;?j++) ? ????????????????flow[i][j]?=?0; ? ? ????????while?(true)//?find?a?augment?path ? ????????{ ? ?????????

文档评论(0)

zilaiye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档