Class MinimumSpanningForest2<V,E>

java.lang.Object
edu.uci.ics.jung.algorithms.shortestpath.MinimumSpanningForest2<V,E>
Type Parameters:
V - the vertex type
E - the edge type

public class MinimumSpanningForest2<V,E> extends Object
For the input Graph, creates a MinimumSpanningTree using a variation of Prim's algorithm.
  • Field Details

    • graph

      protected Graph<V,E> graph
    • forest

      protected Forest<V,E> forest
    • weights

      protected com.google.common.base.Function<? super E,Double> weights
  • Constructor Details

    • MinimumSpanningForest2

      public MinimumSpanningForest2(Graph<V,E> graph, com.google.common.base.Supplier<Forest<V,E>> supplier, com.google.common.base.Supplier<? extends Graph<V,E>> treeFactory, com.google.common.base.Function<? super E,Double> weights)
      Create a Forest from the supplied Graph and supplied Supplier, which is used to create a new, empty Forest. If non-null, the supplied root will be used as the root of the tree/forest. If the supplied root is null, or not present in the Graph, then an arbitary Graph vertex will be selected as the root. If the Minimum Spanning Tree does not include all vertices of the Graph, then a leftover vertex is selected as a root, and another tree is created
      Parameters:
      graph - the graph for which the minimum spanning forest will be generated
      supplier - a factory for the type of forest to build
      treeFactory - a factory for the type of tree to build
      weights - edge weights; may be null
    • MinimumSpanningForest2

      public MinimumSpanningForest2(Graph<V,E> graph, Forest<V,E> forest, com.google.common.base.Supplier<? extends Graph<V,E>> treeFactory, com.google.common.base.Function<? super E,Double> weights)
      Create a forest from the supplied graph, populating the supplied Forest, which must be empty. If the supplied root is null, or not present in the Graph, then an arbitary Graph vertex will be selected as the root. If the Minimum Spanning Tree does not include all vertices of the Graph, then a leftover vertex is selected as a root, and another tree is created
      Parameters:
      graph - the Graph to find MST in
      forest - the Forest to populate. Must be empty
      treeFactory - a factory for the type of tree to build
      weights - edge weights, may be null
  • Method Details

    • getForest

      public Forest<V,E> getForest()
      Returns:
      the generated forest