本文主要是分析连续最短增广链算法计算网络最大流的问题。先综述残留网络和层次网络的基本概念,然后分析连续最短增广链算法计算网络最大流的具体过程,再通过与Ford-Fulkerson (福特-富尔克森算法)和Edmonds-Karp (埃德蒙兹-卡普算法)算法进行比较来体现出连续最短增广链算法的突出点。通过相关性的比较,结论是连续最短增广链算法运行效果明显比Ford-Fulkerson好,且优于Edmonds-Karp。
网络流中最大流问题是一个经典的问题,在最初的Ford-Fulkerson 算法提出到现在已有60 多年的历史了,一直是个值得研究的问题。在此过程中,也提出了许多与之相关的算法。相比于初期的算法,现在对于网络最大流的算法得到了很大的改进,算法时间和空间复杂度都有所下降。常用的算法为Ford-Fulkerson 算法、Edmonds-Karp 算法和Dinic 算法等。
Ford-Fulkerson 算法是利用深度优先搜索的思想来寻找增广链,而这样寻找会使得复杂度依赖于最大传输量。Edmonds-Karp 算法则在Ford-Fulkerson 算法的基础上进行了修改,使得每次按最短路径寻找增广链,但每次找完一个最短增广链后需要重新寻找,利用率不高。而Dinic 算法则是效率更高,使用更频繁。
为此,本文对连续最短增广链算法在网络最大流问题上做一个详细的分析。该算法虽然也是按最短路径来寻找增广链的,不过增加了一个层次网络。相比于每次重新寻找最短增广链来说,利用层次网络将避免了重新寻找最短的增广链所带来的多余的步骤。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !