类 DepthFirstDirectedPaths
- java.lang.Object
-
- edu.princeton.cs.algs4.DepthFirstDirectedPaths
-
public class DepthFirstDirectedPaths extends java.lang.Object
TheDepthFirstDirectedPaths
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 topathTo(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 froms
to every other vertex in digraphG
.
-
方法概要
修饰符和类型 方法 说明 boolean
hasPathTo(int v)
Is there a directed path from the source vertexs
to vertexv
?static void
main(java.lang.String[] args)
Unit tests theDepthFirstDirectedPaths
data type.java.lang.Iterable<java.lang.Integer>
pathTo(int v)
Returns a directed path from the source vertexs
to vertexv
, ornull
if no such path.
-
-
-
构造器详细资料
-
DepthFirstDirectedPaths
public DepthFirstDirectedPaths(Digraph G, int s)
Computes a directed path froms
to every other vertex in digraphG
.- 参数:
G
- the digraphs
- the source vertex- 抛出:
java.lang.IllegalArgumentException
- unless0 <= s < V
-
-
方法详细资料
-
hasPathTo
public boolean hasPathTo(int v)
Is there a directed path from the source vertexs
to vertexv
?- 参数:
v
- the vertex- 返回:
true
if there is a directed path from the source vertexs
to vertexv
,false
otherwise- 抛出:
java.lang.IllegalArgumentException
- unless0 <= v < V
-
pathTo
public java.lang.Iterable<java.lang.Integer> pathTo(int v)
Returns a directed path from the source vertexs
to vertexv
, ornull
if no such path.- 参数:
v
- the vertex- 返回:
- the sequence of vertices on a directed path from the source vertex
s
to vertexv
, as an Iterable - 抛出:
java.lang.IllegalArgumentException
- unless0 <= v < V
-
main
public static void main(java.lang.String[] args)
Unit tests theDepthFirstDirectedPaths
data type.- 参数:
args
- the command-line arguments
-
-