- Kruskal's algorithm finds a minimum spanning tree by greedily adding edges to a forest in order of increasing weight, as long as it does not form a cycle.
- It runs in O(m log m + n) time by sorting edges first and then using efficient data structures to test for cycles in constant time per edge.
- Prim's algorithm grows a minimum spanning tree from a single vertex by always adding the lowest weight edge that connects a new vertex. It runs in O(n^2) time with basic implementations but can be optimized.