Class BFSIterator<T>

  • All Implemented Interfaces:
    Iterator<T>

    public class BFSIterator<T>
    extends Object
    implements Iterator<T>
    This class implements breadth-first search over a Graph, returning an Iterator of the nodes of the graph in order of discovery. This class follows the outNodes of the graph nodes to define the graph, but this behavior can be changed by overriding the getConnected method.
    • Field Detail

      • G

        protected Graph<T> G
        Governing Graph
    • Constructor Detail

      • BFSIterator

        public BFSIterator​(Graph<T> G,
                           T N)
        Construct a breadth-first iterator starting with a particular node in a directed graph.
        Parameters:
        G - the graph whose nodes to enumerate
        Throws:
        IllegalArgumentException - if G is null
      • BFSIterator

        public BFSIterator​(Graph<T> G,
                           Iterator<? extends T> nodes)
        Construct a breadth-first enumerator across the (possibly improper) subset of nodes reachable from the nodes in the given enumeration.
        Parameters:
        nodes - the set of nodes from which to start searching
        Throws:
        IllegalArgumentException - if G is null