Class Graph<DataT,​NodeT extends Node<DataT,​NodeT>>

  • Type Parameters:
    DataT - the type of the data stored in the graph's nodes
    NodeT - the type of the nodes in the graph
    Direct Known Subclasses:
    DAGraph

    public class Graph<DataT,​NodeT extends Node<DataT,​NodeT>>
    extends Object
    Type representing a directed graph data structure.

    Each node in a graph is represented by Node

    • Constructor Detail

      • Graph

        public Graph()
        Creates a directed graph.
    • Method Detail

      • getNodes

        public Collection<NodeT> getNodes()
        Returns:
        all nodes in the graph.
      • addNode

        public void addNode​(NodeT node)
        Adds a node to this graph.
        Parameters:
        node - the node
      • visit

        public void visit​(Graph.Visitor<Node<DataT,​NodeT>> visitor)
        Perform DFS visit in this graph.

        The directed graph will be traversed in DFS order and the visitor will be notified as search explores each node and edge.

        Parameters:
        visitor - the graph visitor
      • findPath

        protected String findPath​(String start,
                                  String end)
        Find the path.
        Parameters:
        start - key of first node in the path
        end - key of last node in the path
        Returns:
        string containing the nodes keys in the path separated by arrow symbol