【问题标题】:What is node-disjoint paths?什么是节点不相交路径?
【发布时间】:2017-06-13 04:28:27
【问题描述】:

我需要解释究竟什么是节点不相交的路径?以及如何确定有向图中两个节点 Source(s) 和 Sink(t) 之间的节点不相交路径的最大数量。任何人都可以用图形解释。

【问题讨论】:

标签: algorithm max-flow ford-fulkerson


【解决方案1】:

路径是顶点序列:s, v_1, .., v_m, t。如果v_i != u_j 对于任何有效的ij,则两条路径s, v_1, .., v_m, ts, u_1, ..., u_k, t 称为节点不相交。

我们可以通过将每个顶点(源和目标除外)一分为二,将第一个副本的边添加到第二个副本,重定向所有边以这个顶点到第一个副本和第二个副本的所有出边结束。之后,答案就是这个图中的最大流量(所有边都应该有一个单位容量)。

【讨论】:

  • 这里我没明白把每个顶点一分为二到底是什么意思?
  • @praveenkumarbeedanal 这意味着构建一个新图,其中有一对顶点而不是每个顶点(源和目标除外),并且按照我的回答中的描述添加边。
【解决方案2】:

你也可以认为每个顶点都有自己的容量,这意味着每个顶点只能通过一次。以这种方式构建一个新图:
(1)容量(vi) = 1
(2)容量(ei) = 1
然后运行最大流量。答案是最大数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-18
    • 2020-11-16
    • 2014-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多