Class 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 Detail

      • Graph

        public Graph()
    • Method Detail

      • 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.
      • 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.