我有一个关于 UndirectedGraph 使用的问题。我的代码:
UndirectedGraph<String, DefaultEdge> graph =
new SimpleGraph<String, DefaultEdge>(DefaultEdge.class);
String v1 = "v1";
String v2 = "v2";
String v3 = "v3";
String v4 = "v4";
graph.addVertex(v1);
graph.addVertex(v2);
graph.addVertex(v3);
graph.addVertex(v4);
graph.addEdge(v1, v2);
graph.addEdge(v2, v3);
graph.addEdge(v3, v4);
graph.addEdge(v4, v1);
每个顶点均已成功添加到图形中。但是,addEdge 方法无法正常工作。当我调试此代码时,第一个 addEdge 行引发了类未找到异常。
希望你能帮助我。谢谢。
使用 jgrapht-0.8.3,以下内容按预期工作:
import org.jgrapht.UndirectedGraph;
import org.jgrapht.graph.DefaultEdge;
import org.jgrapht.graph.SimpleGraph;
public class GraphTest {
public static void main(String[] args) {
UndirectedGraph<String, DefaultEdge> graph =
new SimpleGraph<String, DefaultEdge>(DefaultEdge.class);
String v1 = "v1";
String v2 = "v2";
String v3 = "v3";
String v4 = "v4";
graph.addVertex(v1);
graph.addVertex(v2);
graph.addVertex(v3);
graph.addVertex(v4);
graph.addEdge(v1, v2);
graph.addEdge(v2, v3);
graph.addEdge(v3, v4);
graph.addEdge(v4, v1);
if( graph.getEdge(v1, v2) != null) { System.out.println("SUCCESS"); }
if (graph.getEdge(v2,v4) == null) { System.out.println("SUCCESS"); }
}
}
我明白了
SUCCESS
SUCCESS
您能澄清一下您遇到了什么问题吗?
我是一名优秀的程序员,十分优秀!