我对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行抛出class not found异常。
我希望你能帮助我。谢谢。
最佳答案
使用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"); }
}
}
我懂了
成功
成功
您能说明您遇到什么问题吗?
关于java - JGraphT-UndirectedGraph-addEdge方法不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10574711/