使用边缘列表绘制图形

时间:2013-05-28 02:44:13

标签: java graph

我需要一种方法将一组顶点拆分成单​​独的组件,只使用边缘列表。

例如,如果程序显示输入

2,3

1,5

3,4

4,2

我需要将1和5放在与2,3,4不同的单独结构中,因为它们没有连接。

将所有顶点放入邻接列表是否是一个好主意,如果是,那将决定它们如何分裂?

还要记住,顶点数和边数都是已知的,但是可变的。

1 个答案:

答案 0 :(得分:0)

如果我理解正确,那么你真的可以使用像深度优先搜索这样的东西。 当你到某一点时,你用索引0标记它(例如)。 当你似乎走过连接结构中的所有点(你的搜索完成) 你开始迭代点数组以查看是否有一些未标记的点(带0),所以开始在该点上运行深度优先搜索并用1标记所有点... 所以你将能够分析点数组,并看到其中一些标记为0,一些标记为1,一些标记为2 ...所以如果你有0,1,2那么你有3个独立的结构。

希望它有用。