All Packages  Class Hierarchy  This Package  Previous  Next  Index  

Class structure.GraphMatrixDirected

java.lang.Object
    |
    +----structure.GraphMatrix
            |
            +----structure.GraphMatrixDirected

public class GraphMatrixDirected
extends GraphMatrix
A class implementing a directed, adjacency-matrix based graph. User must commit to upper-bound on number of vertices.

See Also:
GraphMatrix, GraphMatrixUndirected, GraphListDirected

Constructor Index

 o GraphMatrixDirected(int)
Construct a directed, adjacency-matrix based graph.

Method Index

 o addEdge(Object, Object, Object)
Add an edge between two vertices within the graph.
 o edgeCount()
Determine the number of edges in graph.
 o edges()
Construct an iterator over all edges.
 o removeEdge(Object, Object)
Remove possible edge between vertices labeled vLabel1 and vLabel2.
 o toString()
Construct a string representation of graph.

Constructors

 o GraphMatrixDirected
public GraphMatrixDirected(int size)
Construct a directed, adjacency-matrix based graph.

Precondition:
size > 0
Postcondition:
constructs an empty graph that may be expanded to at most size vertices. Graph is directed if dir true and undirected otherwise

Parameters:
size - The maximum number of vertices allowed in graph.

Methods

 o addEdge
public void addEdge(Object vLabel1,
                    Object vLabel2,
                    Object label)
Add an edge between two vertices within the graph. Edge is directed. Duplicate edges are silently replaced. Labels on edges may be null.

Precondition:
vLabel1 and vLabel2 are labels of existing vertices, v1 & v2
Postcondition:
an edge is inserted between v1 and v2. if edge is new, it is labeled with label (can be null)

Parameters:
vLabel1 - Source vertex.
vLabel2 - Destination vertex.
label - Label associated with the edge.
Overrides:
addEdge in class GraphMatrix
 o removeEdge
public Object removeEdge(Object vLabel1,
                         Object vLabel2)
Remove possible edge between vertices labeled vLabel1 and vLabel2. vLabel1 is the source.

Precondition:
vLabel1 and vLabel2 are labels of existing vertices
Postcondition:
edge is removed, its label is returned

Parameters:
vLabel1 - Source vertex.
vLabel2 - Destination vertex.
Returns:
The label associated with the edge removed.
Overrides:
removeEdge in class GraphMatrix
 o edgeCount
public int edgeCount()
Determine the number of edges in graph.

Postcondition:
returns the number of edges in graph

Returns:
Number of edges in graph.
Overrides:
edgeCount in class GraphMatrix
 o edges
public Iterator edges()
Construct an iterator over all edges. edge is considered exactly once. Order is not guaranteed.

Postcondition:
returns iterator across all edges of graph (returns Edges)

Returns:
Iterator over edges.
Overrides:
edges in class GraphMatrix
 o toString
public String toString()
Construct a string representation of graph.

Postcondition:
returns string representation of graph

Returns:
String representing graph.
Overrides:
toString in class Object

All Packages  Class Hierarchy  This Package  Previous  Next  Index