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