1

不久前,我偶然发现了这个帖子:

确定无向图是否为树的最佳算法

它说要确定一个无向图是否是一棵树,你只需要检查它是否有一个循环。但是,您不必确保图形是连接的吗?我被告知一棵树是连接的并且是无环的。仅检查非周期性如何就足够了?

谢谢。

4

1 回答 1

0

你是对的。如果图是非循环的,那么它就是一片森林。此外,如果它只有一个组件,那么它就是一棵树。

提到的算法所做的是寻找后边缘。如果它找到一个,那么这个图就不是一棵树。如果它没有找到一个并且算法在用完边之前访问了 n-1 条边,那么它就是一棵树,因为访问了 n-1 条边意味着图确实是连接的(具有 n 个顶点的树有 n- 1 个边缘)。如果算法用完了边但没有达到 n-1 个访问的边,那么这意味着图没有连接,因此它不是树。

于 2013-05-26T18:13:33.443 回答