Class DefaultUndirectedGraph<V,​E>

java.lang.Object
org.jgrapht.graph.AbstractGraph<V,​E>
org.jgrapht.graph.AbstractBaseGraph<V,​E>
org.jgrapht.graph.DefaultUndirectedGraph<V,​E>
Type Parameters:
V - the graph vertex type
E - the graph edge type
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Graph<V,​E>
Direct Known Subclasses:
DefaultUndirectedWeightedGraph

public class DefaultUndirectedGraph<V,​E>
extends AbstractBaseGraph<V,​E>
The default implementation of an undirected graph. A default undirected graph is a non-simple undirected graph in which multiple (parallel) edges between any two vertices are not permitted, but loops are.
See Also:
Serialized Form
  • Constructor Details

    • DefaultUndirectedGraph

      public DefaultUndirectedGraph​(java.lang.Class<? extends E> edgeClass)
      Creates a new graph.
      Parameters:
      edgeClass - class on which to base the edge supplier
    • DefaultUndirectedGraph

      public DefaultUndirectedGraph​(java.util.function.Supplier<V> vertexSupplier, java.util.function.Supplier<E> edgeSupplier, boolean weighted)
      Creates a new graph.
      Parameters:
      vertexSupplier - the vertex supplier, can be null
      edgeSupplier - the edge supplier, can be null
      weighted - whether the graph is weighted or not
  • Method Details

    • createBuilder

      public static <V,​ E> GraphBuilder<V,​E,​? extends DefaultUndirectedGraph<V,​E>> createBuilder​(java.lang.Class<? extends E> edgeClass)
      Create a builder for this kind of graph.
      Type Parameters:
      V - the graph vertex type
      E - 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,​? extends DefaultUndirectedGraph<V,​E>> createBuilder​(java.util.function.Supplier<E> edgeSupplier)
      Create a builder for this kind of graph.
      Type Parameters:
      V - the graph vertex type
      E - the graph edge type
      Parameters:
      edgeSupplier - the edge supplier of the new graph
      Returns:
      a builder for this kind of graph