Java Reference
In-Depth Information
14 for ( int i = 0 ; i < vertices.length; i++)
15 addVertex(vertices[i]);
16
17 createAdjacencyLists(edges, vertices.length);
18 }
19
20 /** Construct a graph from vertices and edges stored in List */
21 protected AbstractGraph(List<V> vertices, List<Edge> edges) {
22 for ( int i = 0 ; i < vertices.size(); i++)
23 addVertex(vertices.get(i));
24
25 createAdjacencyLists(edges, vertices.size());
26 }
27
28 /** Construct a graph for integer vertices 0, 1, 2 and edge list */
29 protected AbstractGraph(List<Edge> edges, int numberOfVertices) {
30 for ( int i = 0 ; i < numberOfVertices; i++)
31 addVertex((V)( new Integer(i))); // vertices is {0, 1, ...}
32
33 createAdjacencyLists(edges, numberOfVertices);
34 }
35
36 /** Construct a graph from integer vertices 0, 1, and edge array */
37 protected AbstractGraph( int [][] edges, int numberOfVertices) {
38 for ( int i = 0 ; i < numberOfVertices; i++)
39 addVertex((V)( new Integer(i))); // vertices is {0, 1, ...}
40
41 createAdjacencyLists(edges, numberOfVertices);
42 }
43
44 /** Create adjacency lists for each vertex */
45 private void createAdjacencyLists(
46 int [][] edges, int numberOfVertices) {
47 for ( int i = 0 ; i < edges.length; i++) {
48 addEdge(edges[i][ 0 ], edges[i][ 1 ]);
49 }
50 }
51
52 /** Create adjacency lists for each vertex */
53 private void createAdjacencyLists(
54 List<Edge> edges, int numberOfVertices) {
55 for (Edge edge: edges) {
56 addEdge(edge.u, edge.v);
57 }
58 }
59
60 @Override /** Return the number of vertices in the graph */
61
constructor
constructor
constructor
public int getSize() {
getSize
62
return vertices.size();
63 }
64
65 @Override /** Return the vertices in the graph */
66
public List<V> getVertices() {
getVertices
67
return vertices;
68 }
69
70 @Override /** Return the object for the specified vertex */
71
public V getVertex( int index) {
getVertex
72
return vertices.get(index);
73 }
 
 
Search WWH ::




Custom Search