Skip to main content

An empirical analysis of algorithms for constructing a minimum spanning tree

  • Conference paper
  • First Online:
Book cover Algorithms and Data Structures (WADS 1991)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 519))

Included in the following conference series:

Abstract

We compare algorithms for the construction of a minimum spanning tree through largescale experimentation on randomly generated graphs of different structures and different densities. In order to extrapolate with confidence, we use graphs with up to 130,000 nodes (sparse) or 750,000 edges (dense). Algorithms included in our experiments are Prim's algorithm (implemented with a variety of priority queues), Kruskal's algorithm (using presorting or demand sorting), Cheriton and Tarjan's algorithm, and Fredman and Tarjan's algorithm. We also ran a large variety of tests to investigate low-level implementation decisions for the data structures, as well as to enable us to eliminate the effect of compilers and architectures.

Within the range of sizes used, Prim's algorithm, using pairing heaps or sometimes binary heaps, is clearly preferable. While versions of Prim's algorithm using efficient implementations of Fibonacci heaps or rank-relaxed heaps often approach and (on the densest graphs) sometimes exceed the speed of the simpler implementations, the code for binary or pairing heaps is much simpler, so that these two heaps appear to be the implementation of choice.

Some conclusions regarding implementation of priority queues also emerge from our study: in the context of a greedy algorithm, pairing heaps appear faster than other implementations, closely followed by binary, rank-relaxed and Fibonacci heaps, the latter two implemented with sacks, while splay trees finish a decided last.

This author did his work while a visiting professor at the Institut für Grundlagen der Informationsverarbeitung und Computergestützte neue Medien, Technische Universität Graz, A-8010 Graz, Austria.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Cheriton, D., and R.E. Tarjan, “Finding minimum spanning trees,” SIAM J. Comput. 5 (1976), pp. 724–742.

    Google Scholar 

  2. Driscoll, J.R., H.N. Gabow, R. Shrairman, and R.E. Tarjan, “Relaxed heaps: an alternative to Fibonacci heaps with applications to parallel computation,” Comm. ACM 11 (1988), pp. 1343–1354.

    Google Scholar 

  3. Fredman, M.L., R. Sedgewick, D.D. Sleator, and R.E. Tarjan, “The pairing heap: a new form of self-adjusting heap,” Algorithmica 1 (1986), pp. 111–129.

    Google Scholar 

  4. Fredman, M.L., and R.E. Tarjan, “Fibonacci heaps and their use in improved network optimization algorithms,” Proc. 25th Ann. IEEE Symp. Foundations Comput. Sci. FOCS-84, pp. 338–346; also in final form in J. ACM 34 (1987), pp. 596–615.

    Google Scholar 

  5. Fredman, M.L., and D.E. Willard, “Trans-dichotomous algorithms for minimum spanning trees and shortest paths,” Proc. 31st Ann. IEEE Symp. Foundations Comput. Sci. FOCS-90, pp. 719–725.

    Google Scholar 

  6. Gabow, H.N., Z. Galil, T.H. Spencer, and R.E. Tarjan, “Efficient algorithms for minimum spanning trees on directed and undirected graphs,” Combinatorica 6 (1986), pp. 109–122.

    Google Scholar 

  7. Graham, R.L., and O. Hell, “On the history of the minimum spanning tree problem,” Ann. Hist. Comput. 7 (1985), pp. 43–57.

    Google Scholar 

  8. Jones, D.W. “An empirical comparison of priority-queue and event-set implementations,” Commun. ACM 29 (1986), pp. 300–311.

    Google Scholar 

  9. Johnson, D.B., “Priority queues with update and finding minimum spanning trees,” Inf. Process. Lett. 4 (1975), pp. 53–57.

    Google Scholar 

  10. Moret, B.M.E., and H.D. Shapiro. Algorithms from P to NP. Volume I: Design and Efficiency. Benjamin-Cummings, Menlo Park, CA, 1991.

    Google Scholar 

  11. Sleator, D.D., and R.E. Tarjan, “Self-adjusting binary trees,” Proc. 15th Ann. ACM Symp. Theory Comput. STOC-83, pp. 235–245; also in final form in J. ACM 32 (1985), pp. 652–686.

    Google Scholar 

  12. Stasko, J.T., and J.S. Vitter, “Pairing heaps: experiments and analysis,” Commun. ACM 30 (1987), pp. 234–249.

    Google Scholar 

  13. Tarjan, R.E. Data Structures and Network Algorithms. SIAM, Philadelphia, 1983.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Frank Dehne Jörg-Rüdiger Sack Nicola Santoro

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Moret, B.M.E., Shapiro, H.D. (1991). An empirical analysis of algorithms for constructing a minimum spanning tree. In: Dehne, F., Sack, JR., Santoro, N. (eds) Algorithms and Data Structures. WADS 1991. Lecture Notes in Computer Science, vol 519. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0028279

Download citation

  • DOI: https://doi.org/10.1007/BFb0028279

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-54343-5

  • Online ISBN: 978-3-540-47566-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics