邻接矩阵 - >有向图 - > DFS

时间:2013-04-02 05:45:11

标签: java depth-first-search directed-graph adjacency-matrix

这是我和朋友们在摆弄后到目前为止所提出的代码。我们要做的是在邻接矩阵(input.txt)中读取,然后从中创建一个有向图,这样我们就可以使用深度优先搜索来搜索它。我们希望程序的输出提供被访问节点的顺序。

java代码: http://pastebin.com/bAzBadxi

input.txt文件: http://pastebin.com/r72J34uA

我的问题是,我们将“n”初始化为什么? (java代码中的第32行)

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

在使用它之前创建一个顶点对象。

Vertex n;    // before g.addVertex(n);

我没有验证你的算法,只是删除编译器错误,如果你的算法是正确的,它应该可以正常工作

答案 1 :(得分:0)

您要解决的是拓扑排序问题。

Topological sorting

在这种情况下,初始化的内容并不重要,您可以简单地使用邻接矩阵中的第一个顶点作为开头。

邻接矩阵(应该是方矩阵)是有向图的合法表示,您可以使用矩阵直接搜索图。