Class Graph

java.lang.Object
org.apache.openjpa.lib.graph.Graph

public class Graph extends Object

Graph representation using the adjacency list form. See the book 'Introduction to Algorithms' by Cormen, Leiserson, and Rivest.

Since:
1.0.0
Author:
Abe White
  • Constructor Details

    • Graph

      public Graph()
  • Method Details

    • clear

      public void clear()
      Clear the graph.
    • containsNode

      public boolean containsNode(Object node)
      Return true if the graph contains the given node.
    • getNodes

      public Collection<Object> getNodes()
      Return a view of all nodes in the graph.
    • addNode

      public void addNode(Object node)
      Add a node to the graph. Adding a node a second time has no effect.
    • removeNode

      public boolean removeNode(Object node)
      Remove a node from the graph. All edges to and from the node will be cleared.
      Returns:
      true if the node was removed, false otherwise
    • getEdges

      public Collection<Edge> getEdges()
      Return all edges in the graph.
    • getEdgesFrom

      public Collection<Edge> getEdgesFrom(Object node)
      Return all the edges from a particular node.
    • getEdgesTo

      public Collection<Edge> getEdgesTo(Object node)
      Return all the edges to a particular node.
    • getEdges

      public Collection<Edge> getEdges(Object from, Object to)
      Return all the edges from one node to another.
    • addEdge

      public void addEdge(Edge edge)
      Add an edge to the graph.
    • removeEdge

      public boolean removeEdge(Edge edge)
      Remove an edge from the graph.
      Returns:
      true if the edge was removed, false if not in the graph
    • clearTraversal

      public void clearTraversal()
      Clear all nodes and edges of the bookkeeping information from their last traversal.