Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
不久前,我偶然发现了这个帖子:
确定无向图是否为树的最佳算法
它说要确定一个无向图是否是一棵树,你只需要检查它是否有一个循环。但是,您不必确保图形是连接的吗?我被告知一棵树是连接的并且是无环的。仅检查非周期性如何就足够了?
谢谢。
你是对的。如果图是非循环的,那么它就是一片森林。此外,如果它只有一个组件,那么它就是一棵树。
提到的算法所做的是寻找后边缘。如果它找到一个,那么这个图就不是一棵树。如果它没有找到一个并且算法在用完边之前访问了 n-1 条边,那么它就是一棵树,因为访问了 n-1 条边意味着图确实是连接的(具有 n 个顶点的树有 n- 1 个边缘)。如果算法用完了边但没有达到 n-1 个访问的边,那么这意味着图没有连接,因此它不是树。