Distinct Edge Weights
Learn about the minimum spanning trees problem with distinct edge weights and its solution using various algorithms.
We'll cover the following...
Suppose we are given a connected, undirected, weighted graph. This is a graph together with a function that assigns a real weight to each edge , which may be positive, negative, or zero. This chapter describes several algorithms to find the minimum spanning tree of , that is, the spanning tree T that minimizes the function
Distinct edge weights
An annoying subtlety in the problem statement is that weighted graphs can have more than one spanning tree with the same minimum weight; in particular, if every edge in has weight , then every spanning tree of is a minimum spanning tree, with weight . This ambiguity complicates the development of our algorithms; everything would be much simpler if we could simply assume that minimum spanning trees are unique.
Proof of the uniqueness of minimum spanning tree
Fortunately, there is an easy condition that implies the uniqueness we want.
Lemma: If all edge weights in a connected graph are distinct, then has a unique minimum spanning tree.
Proof: Let be an arbitrary connected graph with two minimum spanning trees and ; we need to prove that some pair of edges in have the same weight. The proof is essentially a greedy exchange argument. Each of our spanning trees must contain an edge that the other tree omits. Let be a minimum-weight edge in , and let ...