无向图中的连通分量数

时间:2014-02-25 22:07:04

标签: python graph

我对如何使用Python解决这个问题非常困惑。请不要为我解决这个问题,因为我正在学习Python并且获得完整的灵魂并没有帮助。假设我有以下输入:

1
0,4
3
2
1

第一行是节点0,第二行是节点1等......(本例中为5个节点)。 这个程序的答案应该是" 2"因为有2个岛屿和#34;连通组件。一个是2-3,第二个是0-1-4。如何从上面给定的输入计算这个答案的任何提示将非常感激。谢谢!顺便说一下,我是一名11年级的学生,所以我对编码的了解有限,请跟我说吧。)

1 个答案:

答案 0 :(得分:1)

  1. 将图形的基于ASCII的表示读入一个不错的Python结构(dict节点→list_of_edges对小图表可以正常工作。“
  2. 在第一个未访问的节点上执行泛洪算法(访问从那里可到达的每个节点)。
  3. 继续执行第2步,并计算找到仍未访问的节点的频率。
  4. 当您再也找不到未访问的节点时,这将终止。