public class Tarjan<T>
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
class |
Tarjan.Node |
Modifier and Type | Field and Description |
---|---|
private int |
index |
private Tarjan.Node |
root |
private java.util.Set<java.util.Set<T>> |
scc |
private java.util.List<Tarjan.Node> |
stack |
Constructor and Description |
---|
Tarjan() |
Modifier and Type | Method and Description |
---|---|
private Tarjan.Node |
getNode(java.util.Map<T,Tarjan.Node> index,
T key) |
(package private) java.util.Set<java.util.Set<T>> |
getResult(java.util.Map<T,? extends java.util.Collection<T>> graph) |
static <T> java.util.Collection<? extends java.util.Collection<T>> |
tarjan(java.util.Map<T,? extends java.util.Collection<T>> graph) |
(package private) void |
tarjan(Tarjan.Node v) |
private int index
private java.util.List<Tarjan.Node> stack
private java.util.Set<java.util.Set<T>> scc
private Tarjan.Node root
void tarjan(Tarjan.Node v)
java.util.Set<java.util.Set<T>> getResult(java.util.Map<T,? extends java.util.Collection<T>> graph)
private Tarjan.Node getNode(java.util.Map<T,Tarjan.Node> index, T key)
public static <T> java.util.Collection<? extends java.util.Collection<T>> tarjan(java.util.Map<T,? extends java.util.Collection<T>> graph)