这是我和朋友们在摆弄后到目前为止所提出的代码。我们要做的是在邻接矩阵(input.txt)中读取,然后从中创建一个有向图,这样我们就可以使用深度优先搜索来搜索它。我们希望程序的输出提供被访问节点的顺序。
java代码: http://pastebin.com/bAzBadxi
input.txt文件: http://pastebin.com/r72J34uA
我的问题是,我们将“n”初始化为什么? (java代码中的第32行)
任何帮助将不胜感激。
答案 0 :(得分:1)
在使用它之前创建一个顶点对象。
Vertex n; // before g.addVertex(n);
我没有验证你的算法,只是删除编译器错误,如果你的算法是正确的,它应该可以正常工作
答案 1 :(得分:0)
您要解决的是拓扑排序问题。
在这种情况下,初始化的内容并不重要,您可以简单地使用邻接矩阵中的第一个顶点作为开头。
邻接矩阵(应该是方矩阵)是有向图的合法表示,您可以使用矩阵直接搜索图。