Advertisement

Skip lists: A probabilistic alternative to balanced trees

  • William Pugh
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 382)

Abstract

Skip lists are a practical, probabilistic data structure that can be used in place of balanced trees. Algorithms for insertion and deletion in skip lists are much simpler and significantly faster than equivalent algorithms for balanced trees. This paper describes and analyzes skip lists and presents new techniques for analyzing probabilistic algorithms.

Keywords

Binary Tree Negative Binomial Distribution Search Path Balance Tree Probabilistic Alternative 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [AHU83]
    Aho, A., Hopcroft, J., and Ullman, J. Data Structures and Algorithms, Addison-Wesley Publishing Company, 1983.Google Scholar
  2. [BLLSS86]
    Bentley, J., Leighton, F. T., Lepley, M., F. Stanat, D., and Steele, J. M. A Randomized Data Structure For Ordered Sets, MIT/LCS Technical Memo 297, May 1986.Google Scholar
  3. [Knu73]
    Knuth, D. "Sorting and Searching," The Art of Computer Programming, Vol. 3, Addison-Wesley Publishing Company, 1973.Google Scholar
  4. [PT89]
    Pugh, W., and Teitelbaum, T. "Incremental Computation via Function Caching," Proc. of the Sixteenth conference on the Principles of Programming Languages, 1989.Google Scholar
  5. [Pug89a]
    Pugh, W., Skip Lists: A Probabilistic Alternative to Balanced Trees, Tech Report TR-CS-2190, University of Maryland, College Park, 1989.Google Scholar
  6. [Pug89b]
    Pugh, W., Concurrent Maintainence of Skip Lists, Tech Report TR-CS-2222, University of Maryland, College Park, 1989.Google Scholar
  7. [Pug89c]
    Pugh, W., A Skip List Cookbook, in preparation.Google Scholar
  8. [ST85]
    Sleator, D., and Tarjan, R. "Self-Adjusting Binary Search Trees," Journal of the ACM, Vol. 32, No. 3, July 1985, pp. 652–666.CrossRefGoogle Scholar
  9. [Wir76]
    Wirth, N. Algorithms+Data Structures=Programs, Prentice-Hall, 1976.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1989

Authors and Affiliations

  • William Pugh
    • 1
  1. 1.Department of Computer ScienceUniversity of MarylandCollege ParkUSA

Personalised recommendations