如何判断带权的二部图是否可分离?

时间:2019-06-06 04:58:16

标签: java algorithm graph-algorithm

我想确定当存在权重小于或等于阈值的顶点时二部图是否可分离。例如,选择dim作为阈值。

enter image description here

  • 在图1)中,有一个顶点为红色的权重小于0.2。二部图可以分为三个子图,红色顶点分别复制到三个子图中。

  • 在图2)中,还有一个顶点为红色的权重小于0.2的顶点。但是,红色边缘会导致二分图不被拆分为子图。

我的想法:

  1. 复制权重小于或等于阈值的顶点(名为0.2,红色),并将重复的顶点分别链接到关联的顶点(绿色边缘)。关联顶点是连接到顶点lowVer的顶点。

  2. 与顶点lowVer(黄色边缘)断开连接。

  3. 判断二部图是否可以用lowVer

  4. 隔开

enter image description here

有更好的方法吗?

2 个答案:

答案 0 :(得分:0)

如果我很好理解,您想知道的是给定的顶点(小于顶点的顶点)是否是关节点。关节点是一个顶点,当从图形中删除该顶点时,会增加连接的组件数。

如果我正确地提出了您的问题,那么有很多算法可以找到明确的联系点,例如参见https://en.wikipedia.org/wiki/Biconnected_component#Other_algorithmshttps://www.geeksforgeeks.org/articulation-points-or-cut-vertices-in-a-graph/

答案 1 :(得分:0)

有很多方法可以解决此问题。 让我们选择权重为0.1的节点,并将其放置为图的根。

image

现在,如果叶节点的阶数为1,则其可分离 否则,这是不可分离的。

让我知道我是否想念一些东西。