【发布时间】:2017-06-13 04:28:27
【问题描述】:
我需要解释究竟什么是节点不相交的路径?以及如何确定有向图中两个节点 Source(s) 和 Sink(t) 之间的节点不相交路径的最大数量。任何人都可以用图形解释。
【问题讨论】:
-
这可能会有所帮助:quora.com/…
标签: algorithm max-flow ford-fulkerson
我需要解释究竟什么是节点不相交的路径?以及如何确定有向图中两个节点 Source(s) 和 Sink(t) 之间的节点不相交路径的最大数量。任何人都可以用图形解释。
【问题讨论】:
标签: algorithm max-flow ford-fulkerson
路径是顶点序列:s, v_1, .., v_m, t。如果v_i != u_j 对于任何有效的i 和j,则两条路径s, v_1, .., v_m, t 和s, u_1, ..., u_k, t 称为节点不相交。
我们可以通过将每个顶点(源和目标除外)一分为二,将第一个副本的边添加到第二个副本,重定向所有边以这个顶点到第一个副本和第二个副本的所有出边结束。之后,答案就是这个图中的最大流量(所有边都应该有一个单位容量)。
【讨论】:
你也可以认为每个顶点都有自己的容量,这意味着每个顶点只能通过一次。以这种方式构建一个新图:
(1)容量(vi) = 1
(2)容量(ei) = 1
然后运行最大流量。答案是最大数。
【讨论】: