【问题标题】:Find cut set in a graph [duplicate]在图中查找割集[重复]
【发布时间】:2011-04-26 05:01:59
【问题描述】:

可能重复:
Algorithm: for G = (V,E), how to determine if the set of edges(e belong to E) is a valid cut set of a graph

图 G = (V,E) 的边的子集 S,如何检查它是否是图的 有效割集? 注意:割是将图的顶点划分为两个不相交的子集。因此,割的割集是其端点在分区的不同子集中的边的集合。我有兴趣找到解决这个问题的算法

【问题讨论】:

  • @Moron :以前的算法不适用于所有情况。我在那篇文章中解释过,如果不是,该算法将返回正方形的 3 条边作为有效割集。
  • 那你为什么接受那里的答案?不接受它,编辑问题,说明为什么答案不起作用,并对不正确的答案发表评论。

标签: algorithm graph cut


【解决方案1】:

换句话说,您想确定是否存在标签 V -> {0, 1} 使得 S 中的边具有具有不同标签的端点,而 E - S 中的边具有具有相同标签的端点。这样的标签,如果存在的话,总是可以通过下面的过程来构造的。

遍历 G(比如说深度优先,但这并不重要)。任意标记遍历根。每次处理从标记节点 u 到其他节点 v 的边 e 时,如果 e 不在 S 中,则用 u 的标签标记 v,如果 e 在 S 中,则用 u 的标签标记 v。如果 v 已经有不同的标签,则 S 是不是割集。否则,如果遍历没有发生事故,则 S 是割集。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    • 2018-01-30
    • 1970-01-01
    • 2011-09-23
    • 1970-01-01
    相关资源
    最近更新 更多