我需要将无向图(具有单位节点权重,无处不在,但可能不相关)分成(A)连通分量(由0边分隔),而且由(B)连接的分量只有1,只有2 (依此类推)边缘。
我一直在使用boost::graph::connected_components
作为(A),我正在考虑如何解决(B)。我最初的想法是使用(A)的结果,然后,对于每个连接的组件,只要有单位成本的削减,使用Stoer-Wagner min = cut(boost::graph::stoer_wagner_min_cut
)递归地隔离1连通的组件(1边缘)。
可能是这个任务有一个特定的名称(我不知道),或者BGL或其他一些库已经提供了解决这个问题的算法。
感谢指点/建议。