@ParametersAreNonnullByDefault
Package com.google.common.graph
An API for representing graph (node and edge) data. It is analogous to the Java Collections
Framework APIs for lists, maps, sets, etc.
This package is a part of the open-source Guava library.
-
Interface Summary Interface Description BaseGraph<N> A non-public interface for the methods shared betweenGraphandValueGraph.Graph<N> An interface for graph-structured data, whose edges are anonymous entities with no identity or information of their own.GraphConnections<N,V> An interface for representing and manipulating an origin node's adjacent nodes and edge values in aGraph.MutableGraph<N> A subinterface ofGraphwhich adds mutation methods.MutableNetwork<N,E> A subinterface ofNetworkwhich adds mutation methods.MutableValueGraph<N,V> A subinterface ofValueGraphwhich adds mutation methods.Network<N,E> An interface for graph-structured data, whose edges are unique objects.NetworkConnections<N,E> An interface for representing and manipulating an origin node's adjacent nodes and incident edges in aNetwork.PredecessorsFunction<N> A functional interface for graph-structured data.SuccessorsFunction<N> A functional interface for graph-structured data.ValueGraph<N,V> An interface for graph-structured data, whose edges have associated non-unique values. -
Class Summary Class Description AbstractBaseGraph<N> This class provides a skeletal implementation ofBaseGraph.AbstractBaseGraph.IncidentEdgeSet<N> AbstractBaseGraph.IncidentEdgeSet.Directed<N> AbstractBaseGraph.IncidentEdgeSet.Undirected<N> AbstractDirectedNetworkConnections<N,E> A base implementation ofNetworkConnectionsfor directed networks.AbstractGraph<N> This class provides a skeletal implementation ofGraph.AbstractGraphBuilder<N> A base class for builders that construct graphs with user-defined properties.AbstractNetwork<N,E> This class provides a skeletal implementation ofNetwork.AbstractUndirectedNetworkConnections<N,E> A base implementation ofNetworkConnectionsfor undirected networks.AbstractValueGraph<N,V> This class provides a skeletal implementation ofValueGraph.ConfigurableMutableGraph<N> Configurable implementation ofMutableGraphthat supports both directed and undirected graphs.ConfigurableMutableNetwork<N,E> Configurable implementation ofMutableNetworkthat supports both directed and undirected graphs.ConfigurableMutableValueGraph<N,V> Configurable implementation ofMutableValueGraphthat supports both directed and undirected graphs.ConfigurableNetwork<N,E> Configurable implementation ofNetworkthat supports the options supplied byNetworkBuilder.ConfigurableValueGraph<N,V> Configurable implementation ofValueGraphthat supports the options supplied byAbstractGraphBuilder.DirectedGraphConnections<N,V> An implementation ofGraphConnectionsfor directed graphs.DirectedGraphConnections.PredAndSucc A wrapper class to indicate a node is both a predecessor and successor while still providing the successor value.DirectedMultiNetworkConnections<N,E> An implementation ofNetworkConnectionsfor directed networks with parallel edges.DirectedNetworkConnections<N,E> An implementation ofNetworkConnectionsfor directed networks.EdgesConnecting<E> A class to represent the set of edges connecting an (implicit) origin node to a target node.ElementOrder<T> Used to represent the order of elements in a data structure that supports different options for iteration order guarantees.EndpointPair<N> An immutable pair representing the two endpoints of an edge in a graph.EndpointPair.Ordered<N> EndpointPair.Unordered<N> EndpointPairIterator<N> A class to facilitate the set returned byGraph.edges().EndpointPairIterator.Directed<N> If the graph is directed, each ordered [source, target] pair will be visited once if there is an edge connecting them.EndpointPairIterator.Undirected<N> If the graph is undirected, each unordered [node, otherNode] pair (except self-loops) will be visited twice if there is an edge connecting them.ForwardingGraph<N> ForwardingNetwork<N,E> A class to allowNetworkimplementations to be backed by a provided delegate.ForwardingValueGraph<N,V> A class to allowValueGraphimplementations to be backed by a provided delegate.GraphBuilder<N> A builder for constructing instances ofMutableGraphorImmutableGraphwith user-defined properties.GraphConstants A utility class to hold various constants used by the Guava Graph library.Graphs Graphs.TransposedGraph<N> Graphs.TransposedNetwork<N,E> Graphs.TransposedValueGraph<N,V> ImmutableGraph<N> AGraphwhose elements and structural relationships will never change.ImmutableGraph.Builder<N> A builder for creatingImmutableGraphinstances, especiallystatic finalgraphs.ImmutableNetwork<N,E> ANetworkwhose elements and structural relationships will never change.ImmutableNetwork.Builder<N,E> A builder for creatingImmutableNetworkinstances, especiallystatic finalnetworks.ImmutableValueGraph<N,V> AValueGraphwhose elements and structural relationships will never change.ImmutableValueGraph.Builder<N,V> A builder for creatingImmutableValueGraphinstances, especiallystatic finalgraphs.MapIteratorCache<K,V> A map-like data structure that wraps a backing map and caches values while iterating throughMapIteratorCache.unmodifiableKeySet().MapRetrievalCache<K,V> AMapIteratorCachethat adds additional caching.MapRetrievalCache.CacheEntry<K,V> MultiEdgesConnecting<E> A class to represent the set of edges connecting an (implicit) origin node to a target node.NetworkBuilder<N,E> A builder for constructing instances ofMutableNetworkorImmutableNetworkwith user-defined properties.Traverser<N> An object that can traverse the nodes that are reachable from a specified (set of) start node(s) using a specifiedSuccessorsFunction.Traverser.GraphTraverser<N> Traverser.TreeTraverser<N> UndirectedGraphConnections<N,V> An implementation ofGraphConnectionsfor undirected graphs.UndirectedMultiNetworkConnections<N,E> An implementation ofNetworkConnectionsfor undirected networks with parallel edges.UndirectedNetworkConnections<N,E> An implementation ofNetworkConnectionsfor undirected networks.ValueGraphBuilder<N,V> A builder for constructing instances ofMutableValueGraphorImmutableValueGraphwith user-defined properties. -
Enum Summary Enum Description ElementOrder.Type The type of ordering that this object specifies.GraphConstants.Presence Singleton edge value forGraphimplementations backed byValueGraphs.Graphs.NodeVisitState An enum representing the state of a node during DFS.Traverser.Order