类 DepthFirstDirectedPaths


  • public class DepthFirstDirectedPaths
    extends java.lang.Object
    The DepthFirstDirectedPaths class represents a data type for finding directed paths from a source vertex s to every other vertex in the digraph.

    This implementation uses depth-first search. The constructor takes time proportional to V + E, where V is the number of vertices and E is the number of edges. Each call to hasPathTo(int) takes constant time; each call to pathTo(int) takes time proportional to the length of the path returned. It uses extra space (not including the graph) proportional to V.

    See DepthFirstDirectedPaths for a nonrecursive implementation. For additional documentation, see Section 4.2 of Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.

    • 构造器概要

      构造器 
      构造器 说明
      DepthFirstDirectedPaths​(Digraph G, int s)
      Computes a directed path from s to every other vertex in digraph G.
    • 方法概要

      修饰符和类型 方法 说明
      boolean hasPathTo​(int v)
      Is there a directed path from the source vertex s to vertex v?
      static void main​(java.lang.String[] args)
      Unit tests the DepthFirstDirectedPaths data type.
      java.lang.Iterable<java.lang.Integer> pathTo​(int v)
      Returns a directed path from the source vertex s to vertex v, or null if no such path.
      • 从类继承的方法 java.lang.Object

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

      • DepthFirstDirectedPaths

        public DepthFirstDirectedPaths​(Digraph G,
                                       int s)
        Computes a directed path from s to every other vertex in digraph G.
        参数:
        G - the digraph
        s - the source vertex
        抛出:
        java.lang.IllegalArgumentException - unless 0 <= s < V
    • 方法详细资料

      • hasPathTo

        public boolean hasPathTo​(int v)
        Is there a directed path from the source vertex s to vertex v?
        参数:
        v - the vertex
        返回:
        true if there is a directed path from the source vertex s to vertex v, false otherwise
        抛出:
        java.lang.IllegalArgumentException - unless 0 <= v < V
      • pathTo

        public java.lang.Iterable<java.lang.Integer> pathTo​(int v)
        Returns a directed path from the source vertex s to vertex v, or null if no such path.
        参数:
        v - the vertex
        返回:
        the sequence of vertices on a directed path from the source vertex s to vertex v, as an Iterable
        抛出:
        java.lang.IllegalArgumentException - unless 0 <= v < V
      • main

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