我有一组节点,每个节点都连接到至少一个其他节点。我想知道连接是否可以使每个节点彼此可达。例如:
1--2
|
3--4
对战:
1--2
3--4
我确信这种可达性测试可以用exact cover problem来预测,但是我似乎无法让我的脑子如何去做。有没有人有关于如何做到这一点的任何指针,文档,网站等?例子非常有价值。
更新:我的无知背叛了我,因为对于这种测试来说似乎有更有效的算法。如果你有,请指出我。
答案 0 :(得分:3)
答案 1 :(得分:0)
还有一种快速(但相当复杂)的算法,用于动态维护连接(即在边缘插入/删除下),如本文所示:Poly-logarithmic deterministic fully-dynamic algorithms for connectivity, minimum spanning tree, 2-edge, and biconnectivity
基本思想是维护生成树。简单的情况是插入边缘,并删除非生成树边缘。问题是当删除生成树边缘时,因为现在没有保证连接 - 我们必须有效地搜索备用路由以连接损坏的部分,否则图形将被断开。