java.lang.Object
org.jgrapht.graph.AbstractGraph<V,E>
org.jgrapht.graph.AbstractBaseGraph<V,E>
org.jgrapht.graph.Multigraph<V,E>
- Type Parameters:
V
- the graph vertex typeE
- the graph edge type
- All Implemented Interfaces:
Serializable
,Cloneable
,Graph<V,
E>
- Direct Known Subclasses:
WeightedMultigraph
A multigraph. A multigraph is a non-simple undirected graph in which no loops are permitted, but
multiple (parallel) edges between any two vertices are. If you're unsure about multigraphs, see:
http://mathworld.wolfram.com/Multigraph.html.
- See Also:
-
Field Summary
Fields inherited from interface org.jgrapht.Graph
DEFAULT_EDGE_WEIGHT
-
Constructor Summary
ConstructorDescriptionMultigraph
(Class<? extends E> edgeClass) Creates a new graph.Multigraph
(Supplier<V> vertexSupplier, Supplier<E> edgeSupplier, boolean weighted) Creates a new graph. -
Method Summary
Modifier and TypeMethodDescriptionstatic <V,
E> GraphBuilder<V, E, ? extends Multigraph<V, E>> createBuilder
(Class<? extends E> edgeClass) Create a builder for this kind of graph.static <V,
E> GraphBuilder<V, E, ? extends Multigraph<V, E>> createBuilder
(Supplier<E> edgeSupplier) Create a builder for this kind of graph.Methods inherited from class org.jgrapht.graph.AbstractBaseGraph
addEdge, addEdge, addVertex, addVertex, clone, containsEdge, containsVertex, degreeOf, edgeSet, edgesOf, getAllEdges, getEdge, getEdgeSource, getEdgeSupplier, getEdgeTarget, getEdgeWeight, getType, getVertexSupplier, incomingEdgesOf, inDegreeOf, iterables, outDegreeOf, outgoingEdgesOf, removeEdge, removeEdge, removeVertex, setEdgeSupplier, setEdgeWeight, setVertexSupplier, vertexSet
Methods inherited from class org.jgrapht.graph.AbstractGraph
assertVertexExist, containsEdge, equals, hashCode, removeAllEdges, removeAllEdges, removeAllEdges, removeAllVertices, toString, toStringFromSets
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.jgrapht.Graph
containsEdge, removeAllEdges, removeAllEdges, removeAllVertices, setEdgeWeight
-
Constructor Details
-
Multigraph
Creates a new graph.- Parameters:
edgeClass
- class on which to base the edge supplier
-
Multigraph
Creates a new graph.- Parameters:
vertexSupplier
- the vertex supplier, can be nulledgeSupplier
- the edge supplier, can be nullweighted
- whether the graph is weighted or not
-
-
Method Details
-
createBuilder
public static <V,E> GraphBuilder<V,E, createBuilder? extends Multigraph<V, E>> (Class<? extends E> edgeClass) Create a builder for this kind of graph.- Type Parameters:
V
- the graph vertex typeE
- the graph edge type- Parameters:
edgeClass
- class on which to base factory for edges- Returns:
- a builder for this kind of graph
-
createBuilder
public static <V,E> GraphBuilder<V,E, createBuilder? extends Multigraph<V, E>> (Supplier<E> edgeSupplier) Create a builder for this kind of graph.- Type Parameters:
V
- the graph vertex typeE
- the graph edge type- Parameters:
edgeSupplier
- the edge supplier of the new graph- Returns:
- a builder for this kind of graph
-