Overview
Kruskal's Algorithm sorts edges by weight and uses a disjoint-set structure to decide whether each edge connects two different components.
Builds a minimum spanning tree by adding the cheapest edges that do not create cycles.
Compact metadata for implementation and discovery.
Kruskal's Algorithm sorts edges by weight and uses a disjoint-set structure to decide whether each edge connects two different components.
Quick facts
Runtime and memory behavior at a glance.
Best
O(E log E)
Average
O(E log E)
Worst
O(E log E)
Space
O(V)
accept edge (u, v) if find(u) != find(v)Adds only edges that connect two currently separate components.
Show edges being considered in weight order while components merge.
Union-Find is the usual data structure for fast cycle checks.
What each reference supports for this entry.
Textbook support for Kruskal's Algorithm's standard algorithm design, invariants, and complexity analysis.
Open sourceAlgorithm catalog support for Kruskal's Algorithm's problem context, known alternatives, and practical selection tradeoffs.
Open sourceGood next jumps from the relationship graph, ranked for useful discovery.
Graph Traversal · Core
Boruvka's Algorithm uses Kruskal's Algorithm as a subroutine, representation, or supporting idea while growing many tree components at once and repeatedly adding each component's cheapest outgoing edge.
Compare with thisProcedural Generation · Core
Kruskal maze generation uses Kruskal-style edge selection to carve a spanning-tree maze.
Compare with thisGraph Traversal · Core
Reverse-Delete Algorithm uses Kruskal's Algorithm as a subroutine, representation, or supporting idea while removing expensive edges when their removal does not disconnect the graph.
Compare with thisKruskal's Algorithm solves the minimum spanning tree problem by sorting edges.
Kruskal's Algorithm commonly uses Union-Find to detect cycles.