Reputation: 620
I have a problem about UndirectedGraph usage. My code :
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);
Each vertex was added to graph successfully. Hovewer, addEdge method didn't work properly. When I debug this code, first addEdge line threw class not found exception.
I hope, you will help me. Thanks.
Upvotes: 0
Views: 2974
Reputation: 22884
With jgrapht-0.8.3, the following works as expected:
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"); }
}
}
I get
SUCCESS
SUCCESS
Can you clarify what problem you're having?
Upvotes: 1