Package org.jgrapht.graph
Class Multigraph<V,E>
- 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:
java.io.Serializable
,java.lang.Cloneable
,Graph<V,E>
,UndirectedGraph<V,E>
- Direct Known Subclasses:
WeightedMultigraph
public class Multigraph<V,E> extends AbstractBaseGraph<V,E> implements UndirectedGraph<V,E>
A multigraph. A multigraph is a non-simple undirected graph in which no loops are permitted, but multiple edges between any two vertices are. If you're unsure about multigraphs, see: http://mathworld.wolfram.com/Multigraph.html.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static long
serialVersionUID
-
Constructor Summary
Constructors Constructor Description Multigraph(java.lang.Class<? extends E> edgeClass)
Creates a new multigraph.Multigraph(EdgeFactory<V,E> ef)
Creates a new multigraph with the specified edge factory.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <V,E>
UndirectedGraphBuilderBase<V,E,? extends Multigraph<V,E>,?>builder(java.lang.Class<? extends E> edgeClass)
Create a builder for this kind of graph.static <V,E>
UndirectedGraphBuilderBase<V,E,? extends Multigraph<V,E>,?>builder(EdgeFactory<V,E> ef)
Create a builder for this kind of graph.-
Methods inherited from class org.jgrapht.graph.AbstractBaseGraph
addEdge, addEdge, addVertex, clone, containsEdge, containsVertex, createDirectedSpecifics, createSpecifics, createUndirectedSpecifics, degreeOf, edgeSet, edgesOf, getAllEdges, getEdge, getEdgeFactory, getEdgeSource, getEdgeTarget, getEdgeWeight, incomingEdgesOf, inDegreeOf, isAllowingLoops, isAllowingMultipleEdges, outDegreeOf, outgoingEdgesOf, removeEdge, removeEdge, removeVertex, setEdgeWeight, 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
addEdge, addEdge, addVertex, containsEdge, containsEdge, containsVertex, edgeSet, edgesOf, getAllEdges, getEdge, getEdgeFactory, getEdgeSource, getEdgeTarget, getEdgeWeight, removeAllEdges, removeAllEdges, removeAllVertices, removeEdge, removeEdge, removeVertex, vertexSet
-
Methods inherited from interface org.jgrapht.UndirectedGraph
degreeOf
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Multigraph
public Multigraph(java.lang.Class<? extends E> edgeClass)
Creates a new multigraph.- Parameters:
edgeClass
- class on which to base factory for edges
-
Multigraph
public Multigraph(EdgeFactory<V,E> ef)
Creates a new multigraph with the specified edge factory.- Parameters:
ef
- the edge factory of the new graph.
-
-
Method Detail
-
builder
public static <V,E> UndirectedGraphBuilderBase<V,E,? extends Multigraph<V,E>,?> builder(java.lang.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
-
builder
public static <V,E> UndirectedGraphBuilderBase<V,E,? extends Multigraph<V,E>,?> builder(EdgeFactory<V,E> ef)
Create a builder for this kind of graph.- Type Parameters:
V
- the graph vertex typeE
- the graph edge type- Parameters:
ef
- the edge factory of the new graph- Returns:
- a builder for this kind of graph
-
-