For more up-to-date notes see http://www.cs.yale.edu/homes/aspnes/classes/465/notes.pdf.

1. Synchronous case

See LynchBook Section 4.4.

1.1. The quick sketch

1.2. The bookkeeping

1.3. Running time analysis

To improve message complexity, we have to avoid extra edge probes. Trick is to (a) throw out edges once the endpoints are in the same component and (b) probe edges leaving each component one at a time in order of increasing weight. This gets message complexity down to O(N log N + E) since each edge is probed at most once. But (b) may require Omega(E) steps in the worst case, e.g. if we end up with two large components at the end most of whose edges are self-loops.

1.4. Applications

2. Asynchronous case

Essentially the same algorithm works, but we have to deal with latecomers by absorbing low-level components into high-level components; see LynchBook Section 15.5.


CategoryDistributedComputingNotes

DistributedMinimumSpanningTree (last edited 2011-12-02 18:58:39 by JamesAspnes)