All Classes and Interfaces

Class
Description
The most general implementation of the Graph interface.
A skeletal implementation of the Graph interface, to minimize the effort required to implement graph interfaces.
An empty implementation of a graph iterator to minimize the effort required to implement graph iterators.
Helper for efficiently representing small sets whose elements are known to be unique by construction, implying we don't need to enforce the uniqueness property in the data structure itself.
An undirected view of the backing directed graph specified in the constructor.
An unweighted view of the backing weighted graph specified in the constructor.
An unweighted view of the backing weighted graph specified in the constructor.
A weighted view of the backing graph specified in the constructor.
Bellman-Ford algorithm: weights could be negative, paths could be constrained by a maximum number of edges.
Inspects a graph for the biconnectivity property.
Definition of a block of a graph in MathWorld.

Definition and lemma taken from the article Structure-Based Resilience Metrics for Service-Oriented Networks: Definition 4.5 Let G(V; E) be a connected undirected graph.
A breadth-first iterator for a directed and an undirected graph.
This class implements Bron-Kerbosch clique detection algorithm as it is described in [Samudrala R.,Moult J.:A Graph-theoretic Algorithm for comparative Modeling of Protein Structure; J.Mol.
Allows the chromatic number of a graph to be calculated.
An EdgeFactory for producing edges by using a class as a factory.
A VertexFactory for producing vertices by using a class as a factory.
A closest-first iterator for a directed or undirected graph.
Generates a complete bipartite graph of any size.
Generates a complete graph of any size.
A traversal event with respect to a connected component.
Allows obtaining various connectivity aspects of a graph.
Provides a cross-connected-component traversal functionality for iterator subclasses.
Standard vertex visit state enumeration.
Performs cycle detection on a graph.
A directed graph.
A directed weighted graph.
A default implementation for edges in a Graph.
Implementation of the GraphMapping interface.
A graph backed by the the graph specified at the constructor, which can be listened by GraphListener s and by VertexSetListener s.
A default implementation for edges in a WeightedGraph.
A depth-first iterator for a directed and an undirected graph.
An implementation of Dijkstra's shortest path algorithm using ClosestFirstIterator.
A graph whose all edges are directed.
 
A directed graph that is a MaskSubgraph on another graph.
A directed multigraph.
Maintains a cache of each vertex's neighbors.
A directed pseudograph.
A directed graph that is a subgraph on other graph.
A directed weighted multigraph.
A directed weighted graph that is a subgraph on other graph.
Exports a graph into a DOT file.
An edge factory used by graphs for creating new edges.
Assigns a display name for each of the graph edes.
Provides an edge-reversed view g' of a directed graph g.
A factory for edge sets.
A traversal event for a graph edge.
A flow network is a directed graph where each edge has a capacity and each edge receives a flow.
Generates an empty graph of any size.
This algorithm will check whether a graph is Eulerian (hence it contains an Eulerian circuit).
This class implements a Fibonacci heap data structure.
Implements a node of the Fibonacci heap.
The Floyd-Warshall algorithm finds all shortest paths (all n^2 of them) in O(n^3) time.
Exports a graph into a GML file (Graph Modelling Language).
The root interface in the graph hierarchy.
An event which indicates that a graph has changed.
A graph backed by the the graph specified at the constructor, which delegates all its methods to the backing graph.
An event which indicates that a graph edge has changed, or is about to change.
GraphGenerator defines an interface for generating new graph structures.
Deprecated.
Use Graphs instead.
A graph iterator.
A listener that is notified when the graph changes.
GraphMapping represents a bidirectional mapping between two graphs (called graph1 and graph2), which allows the caller to obtain the matching vertex or edge in either direction, from graph1 to graph2, or from graph2 to graph1.
Exports a graph into a GraphML file.
A GraphPath represents a path in a Graph.
GraphPathImpl is a default implementation of GraphPath.
A collection of utilities to assist with graph manipulation.
Read-only union of two graphs: G1 and G2.
An event which indicates that a graph vertex has changed, or is about to change.
This class will deal with finding the optimal or approximately optimal minimum tour (hamiltonian cycle) or commonly known as the Traveling Salesman Problem.
Generates a hyper cube graph of any size.
Assigns a unique integer to represent each edge.
Assigns a unique integer to represent each vertex.
The algorithm determines the k shortest simple paths in increasing order of weight.
Generates a linear graph of any size.
A directed graph which is also ListenableGraph.
A directed weighted graph which is also ListenableGraph.
A graph that supports listeners on structural change events.
An undirected graph which is also ListenableGraph.
An undirected weighted graph which is also ListenableGraph.
A functor interface for masking out vertices and edges of a graph.
An unmodifiable subgraph induced by a vertex/edge masking function.
Math Utilities.
Exports a graph to a plain text matrix format, which can be processed by matrix manipulation software, such as MTJ or MATLAB.
The ModifiableInteger class wraps a value of the primitive type int in an object, similarly to Integer.
A multigraph.
Maintains a cache of each vertex's neighbors.
ParanoidGraph provides a way to verify that objects added to a graph obey the standard equals/hashCode contract.
Utility class to help implement an iterator/enumerator in which the hasNext() method needs to calculate the next elements ahead of time.
 
A pseudograph.
This Generator creates a random-topology graph of a specified number of vertexes and edges.
This class is used to generate the edge topology for a graph.
Generates a ring graph of any size.
Generates directed or undirected scale-free network of any size.
A simple directed graph.
A simple directed weighted graph.
A simple graph.
A simple weighted graph.
Generates a star graph of any size.
Generates edge names by invoking Object.toString() on them.
Generates vertex names by invoking Object.toString() on them.
Complements the ConnectivityInspector class with the capability to compute the strongly connected components of a directed graph.
A subgraph is a graph that has a subset of vertices and a subset of edges with respect to some base graph.
Implements topological order traversal for a directed acyclic graph.
Constructs the transitive closure of the input graph.
A listener on graph iterator or on a graph traverser.
An empty do-nothing implementation of the TraversalListener interface used for subclasses.
TypeUtil isolates type-unsafety so that code that which uses it for legitimate reasons can stay warning-free.
A graph whose all edges are undirected.
 
An undirected graph that is a MaskSubgraph on another graph.
An undirected graph that is a subgraph on other graph.
An undirected weighted graph that is a subgraph on other graph.
A directed graph that cannot be modified.
An unmodifiable view of the backing graph specified in the constructor.
An undirected graph that cannot be modified.
Algorithms to find a vertex cover for a graph.
Compares two vertices based on their degree.
A vertex factory used by graph algorithms for creating new vertices.
Assigns a display name for each of the graph vertices.
A listener that is notified when the graph's vertex set changes.
A traversal event for a graph vertex.
Exports a graph to a csv format that can be imported into MS Visio.
Binary operator for edge weights.
An interface for a graph whose edges have non-uniform weights.
A weighted multigraph.
A weighted pseudograph.
Generates a wheel graph of any size.