Class MinimumSpanningTreeBoruvka
- All Implemented Interfaces:
MinimumSpanningTree
The algorithm run in iterations. In each iteration it finds the minimum edge incident for each vertex, and adds all of these edges to the forest. Each connected component in the forest become a 'super vertex' in the next iteration. The algorithm terminate when there is a single super vertex in the case the original graph was connected, or when there are no incident edges to the remaining super vertices.
The running time of the algorithm is \(O(m \log n)\) and it uses linear space. Note that only undirected graphs are supported.
Based on "O jistém problému minimálním" [About a certain minimal problem] by Borůvka, Otakar (1926).
- Author:
- Barak Ugav
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.jgalgo.alg.span.MinimumSpanningTree
MinimumSpanningTree.IResult, MinimumSpanningTree.Result<V,
E> -
Constructor Summary
-
Method Summary
Methods inherited from class com.jgalgo.alg.span.MinimumSpanningTreeAbstract
computeMinimumSpanningTree
-
Constructor Details
-
MinimumSpanningTreeBoruvka
public MinimumSpanningTreeBoruvka()Construct a new MST algorithm object.Please prefer using
MinimumSpanningTree.newInstance()
to get a default implementation for theMinimumSpanningTree
interface.
-