【问题标题】:Determine if undirected graph is connected判断无向图是否连通
【发布时间】:2013-05-27 02:26:05
【问题描述】:

不久前我看到了这个帖子:

Best algorithm to determine if an undirected graph is a tree

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

谢谢。

【问题讨论】:

标签: graph depth-first-search


【解决方案1】:

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

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

【讨论】:

  • 但是它在哪里跟踪它访问过的边数?
猜你喜欢
  • 1970-01-01
  • 2015-08-18
  • 1970-01-01
  • 1970-01-01
  • 2011-10-23
  • 2012-04-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多