org.xerial.util.graph
Class AdjacencyList<NodeType,EdgeType>
java.lang.Object
org.xerial.util.graph.AdjacencyList<NodeType,EdgeType>
public class AdjacencyList<NodeType,EdgeType>
- extends Object
AdjacencyList is a directed graph in which node IDs and edge IDs are automatically
assigned to for each node and edge.
- Author:
- leo
|
Method Summary |
int |
add(NodeType node)
|
void |
addEdge(int sourceNodeID,
int destNodeID,
EdgeType edge)
|
void |
addEdge(NodeType sourceNode,
NodeType destNode)
|
void |
addEdge(NodeType sourceNode,
NodeType destNode,
EdgeType edge)
|
void |
clear()
|
Set<Integer> |
destNodeIDSet(Integer nodeID)
|
Set<Integer> |
destNodeIDSetOf(NodeType node)
|
List<Edge> |
edgeSet()
|
int |
getEdgeID(Edge edge)
|
EdgeType |
getEdgeInfo(Edge edge)
|
EdgeType |
getEdgeInfo(NodeType src,
NodeType dest)
|
NodeType |
getNode(int nodeID)
|
int |
getNodeID(NodeType node)
|
boolean |
hasEdge(NodeType src,
NodeType dest)
|
boolean |
hasNode(NodeType node)
|
List<Edge> |
inEdgeList(NodeType node)
|
Collection<NodeType> |
nodeCollection()
|
Set<Integer> |
nodeIDSet()
|
int |
numVertex()
|
List<Edge> |
outEdgeList(NodeType node)
|
List<NodeType> |
outNodeList(NodeType node)
|
void |
setEdge(int edgeID,
int sourceNodeID,
int destNodeID,
EdgeType edge)
|
void |
setNode(int nodeID,
NodeType node)
|
Set<Integer> |
sourceNodeIDSet(Integer nodeID)
|
Set<Integer> |
sourceNodeIDSetOf(NodeType node)
|
String |
toString()
|
AdjacencyList
public AdjacencyList()
add
public int add(NodeType node)
addEdge
public void addEdge(NodeType sourceNode,
NodeType destNode)
addEdge
public void addEdge(NodeType sourceNode,
NodeType destNode,
EdgeType edge)
addEdge
public void addEdge(int sourceNodeID,
int destNodeID,
EdgeType edge)
throws GraphException
- Throws:
GraphException
nodeCollection
public Collection<NodeType> nodeCollection()
nodeIDSet
public Set<Integer> nodeIDSet()
destNodeIDSetOf
public Set<Integer> destNodeIDSetOf(NodeType node)
sourceNodeIDSetOf
public Set<Integer> sourceNodeIDSetOf(NodeType node)
destNodeIDSet
public Set<Integer> destNodeIDSet(Integer nodeID)
sourceNodeIDSet
public Set<Integer> sourceNodeIDSet(Integer nodeID)
getNodeID
public int getNodeID(NodeType node)
getNode
public NodeType getNode(int nodeID)
outEdgeList
public List<Edge> outEdgeList(NodeType node)
outNodeList
public List<NodeType> outNodeList(NodeType node)
inEdgeList
public List<Edge> inEdgeList(NodeType node)
hasNode
public boolean hasNode(NodeType node)
hasEdge
public boolean hasEdge(NodeType src,
NodeType dest)
clear
public void clear()
numVertex
public int numVertex()
edgeSet
public List<Edge> edgeSet()
getEdgeID
public int getEdgeID(Edge edge)
getEdgeInfo
public EdgeType getEdgeInfo(Edge edge)
getEdgeInfo
public EdgeType getEdgeInfo(NodeType src,
NodeType dest)
setNode
public void setNode(int nodeID,
NodeType node)
setEdge
public void setEdge(int edgeID,
int sourceNodeID,
int destNodeID,
EdgeType edge)
toString
public String toString()
- Overrides:
toString in class Object

This work is licensed under a Creative Commons Attribution-ShareAlike 2.1 Japan License.