类 DirectedDFS


  • public class DirectedDFS
    extends java.lang.Object
    The DirectedDFS class represents a data type for determining the vertices reachable from a given source vertex s (or set of source vertices) in a digraph. For versions that find the paths, see DepthFirstDirectedPaths and BreadthFirstDirectedPaths.

    This implementation uses depth-first search. The constructor takes time proportional to V + E (in the worst case), where V is the number of vertices and E is the number of edges.

    For additional documentation, see Section 4.2 of Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.

    • 构造器概要

      构造器 
      构造器 说明
      DirectedDFS​(Digraph G, int s)
      Computes the vertices in digraph G that are reachable from the source vertex s.
      DirectedDFS​(Digraph G, java.lang.Iterable<java.lang.Integer> sources)
      Computes the vertices in digraph G that are connected to any of the source vertices sources.
    • 方法概要

      修饰符和类型 方法 说明
      int count()
      Returns the number of vertices reachable from the source vertex (or source vertices).
      static void main​(java.lang.String[] args)
      Unit tests the DirectedDFS data type.
      boolean marked​(int v)
      Is there a directed path from the source vertex (or any of the source vertices) and vertex v?
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 构造器详细资料

      • DirectedDFS

        public DirectedDFS​(Digraph G,
                           int s)
        Computes the vertices in digraph G that are reachable from the source vertex s.
        参数:
        G - the digraph
        s - the source vertex
        抛出:
        java.lang.IllegalArgumentException - unless 0 <= s < V
      • DirectedDFS

        public DirectedDFS​(Digraph G,
                           java.lang.Iterable<java.lang.Integer> sources)
        Computes the vertices in digraph G that are connected to any of the source vertices sources.
        参数:
        G - the graph
        sources - the source vertices
        抛出:
        java.lang.IllegalArgumentException - unless 0 <= s < V for each vertex s in sources
    • 方法详细资料

      • marked

        public boolean marked​(int v)
        Is there a directed path from the source vertex (or any of the source vertices) and vertex v?
        参数:
        v - the vertex
        返回:
        true if there is a directed path, false otherwise
        抛出:
        java.lang.IllegalArgumentException - unless 0 <= v < V
      • count

        public int count()
        Returns the number of vertices reachable from the source vertex (or source vertices).
        返回:
        the number of vertices reachable from the source vertex (or source vertices)
      • main

        public static void main​(java.lang.String[] args)
        Unit tests the DirectedDFS data type.
        参数:
        args - the command-line arguments