public class Graph<T>
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
Graph.Node<T> |
| Modifier and Type | Field and Description |
|---|---|
protected java.util.Map<T,Graph.Node<T>> |
nodes
Map from node payload to node containing it
|
| Constructor and Description |
|---|
Graph() |
| Modifier and Type | Method and Description |
|---|---|
void |
addEdge(T a,
T b) |
void |
DFS(Graph.Node<T> n,
java.util.Set<Graph.Node<T>> visited,
java.util.ArrayList<T> sorted) |
protected Graph.Node<T> |
getNode(T a) |
java.util.List<T> |
sort()
DFS-based topological sort.
|
protected java.util.Map<T,Graph.Node<T>> nodes
protected Graph.Node<T> getNode(T a)
public java.util.List<T> sort()
public void DFS(Graph.Node<T> n, java.util.Set<Graph.Node<T>> visited, java.util.ArrayList<T> sorted)