Interface  Description 

Edge<V extends Vertex> 
Representation of a graph edge.

EdgeWeigher<V extends Vertex,E extends Edge<V>> 
Abstraction of a graph edge weight function.

Graph<V extends Vertex,E extends Edge> 
Abstraction of a directed graph structure.

GraphPathSearch<V extends Vertex,E extends Edge<V>> 
Representation of a graph path search algorithm.

GraphPathSearch.Result<V extends Vertex,E extends Edge<V>> 
Abstraction of a path search result.

GraphSearch<V extends Vertex,E extends Edge<V>> 
Representation of a graph search algorithm and its outcome.

GraphSearch.Result<V extends Vertex,E extends Edge<V>> 
Notion of a graph search result.

MutableGraph<V extends Vertex,E extends Edge> 
Abstraction of a mutable graph that can be constructed gradually.

MutablePath<V extends Vertex,E extends Edge<V>> 
Abstraction of a mutable path that allows gradual construction.

Path<V extends Vertex,E extends Edge<V>> 
Representation of a path in a graph as a sequence of edges.

Vertex 
Representation of a graph vertex.

Weight 
Abstraction of a graph edge weight.

Class  Description 

AbstractEdge<V extends Vertex> 
Abstract graph edge implementation.

AbstractGraphPathSearch<V extends Vertex,E extends Edge<V>> 
Basis for various graph path search algorithm implementations.

AdjacencyListsGraph<V extends Vertex,E extends Edge<V>> 
Immutable graph implemented using adjacency lists.

BellmanFordGraphSearch<V extends Vertex,E extends Edge<V>> 
BellmanFord graph search algorithm for locating shortestpaths in
directed graphs that may contain negative cycles.

BreadthFirstSearch<V extends Vertex,E extends Edge<V>> 
Implementation of the BFS algorithm.

DefaultEdgeWeigher<V extends Vertex,E extends Edge<V>> 
Default weigher returns identical weight for every graph edge.

DefaultMutablePath<V extends Vertex,E extends Edge<V>> 
Simple concrete implementation of a directed graph path.

DefaultPath<V extends Vertex,E extends Edge<V>> 
Simple concrete implementation of a directed graph path.

DepthFirstSearch<V extends Vertex,E extends Edge<V>> 
DFS graph search algorithm implemented via iteration rather than recursion.

DijkstraGraphSearch<V extends Vertex,E extends Edge<V>> 
Dijkstra shortestpath graph search algorithm capable of finding not just
one, but all shortest paths between the source and destinations.

DisjointPathPair<V extends Vertex,E extends Edge<V>> 
Pair of disjoint paths.

Heap<T> 
Implementation of an arraybacked heap structure whose sense of order is
imposed by the provided comparator.

KShortestPathsSearch<V extends Vertex,E extends Edge<V>> 
Runs K shortest paths algorithm on a provided directed graph.

LazyKShortestPathsSearch<V extends Vertex,E extends Edge<V>> 
Lazily runs K shortest paths algorithm on a provided directed graph.

MutableAdjacencyListsGraph<V extends Vertex,E extends Edge<V>>  
ScalarWeight 
Weight implementation based on a double value.

SrlgGraphSearch<V extends Vertex,E extends Edge<V>> 
SRLG Graph Search finds a pair of paths with disjoint risk groups; i.e
if one path goes through an edge in risk group 1, the other path will go
through no edges in risk group 1.

SuurballeGraphSearch<V extends Vertex,E extends Edge<V>> 
Suurballe shortestpath graph search algorithm capable of finding both
a shortest path, as well as a backup shortest path, between a source and a destination
such that the sum of the path lengths is minimized.

TarjanGraphSearch<V extends Vertex,E extends Edge<V>> 
Tarjan algorithm for searching a graph and producing results describing
the graph SCC (stronglyconnected components).

TarjanGraphSearch.SccResult<V extends Vertex,E extends Edge<V>> 
Graph search result augmented with SCC vertexData.

Enum  Description 

DepthFirstSearch.EdgeType 
Graph edge types as classified by the DFS algorithm.
