cio*_*Pep 8 java algorithm pseudocode edmonds-karp
我使用我在Edmonds-Karp算法wiki页面中找到的Pseudocode实现了Edmonds-Karp算法:http://en.wikipedia.org/wiki/Edmonds%E2%80%93Karp_algorithm
它工作得很好,但算法输出是最大流量值(最小切割值),我需要这个切割所包含的边缘列表
我试图改变算法,没有成功,你们可以帮忙吗?
谢谢
如果您已经有了流量,则计算残差图。然后从源进行深度优先搜索(或广度优先搜索,我认为这并不重要),以计算一半切割(S)中的顶点。剩余的顶点位于切割的另一半中,T。
这给了你你的削减(S,T)。如果您特别想要 S 和 T 之间的边,则可以迭代所有边,选择连接 S 和 T 的边。(尽管可能有一种更优雅的方法来完成最后一部分。)