Journal of the Association for Computing Machinery, Vol. 42, No. 2, March 1995, pp. 321–328.

A Randomized Linear-Time Algorithm to Find Minimum Spanning Trees

DAVID R. KARGER

PHILIP N. KLEIN

AND

ROBERT E. TARJAN

Abstract. We present a randomized linear-time algorithm to find a minimum spanning tree in a connected graph with edge weights. The algorithm uses random sampling in combination with a recently discovered linear-time algorithm for verifying a minimum spanning tree. Our computational model is a unit-cost random-access machine with the restriction that the only operations allowed on edge weights are binary comparisons.

Categories and Subject Descriptors. F.2.2[computations on discrete structures]; G.2.2[graph algorithms, network problems, trees]; G.3[probabilistic algorithms (including Monte Carlo)], I.5.3

General Terms. Algorithms

Additional Key words and Phrases. Matroid, minimum spanning tree, network, randomized algorithm

Copyright 1995 by ACM, Inc. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or direct commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Publications Dept, ACM Inc., fax +1 (212) 869-0481, or permissions@acm.org.