Rank-Balanced Trees

  • Bernhard Haeupler
  • Siddhartha Sen
  • Robert E. Tarjan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5664)

Abstract

Since the invention of AVL trees in 1962, a wide variety of ways to balance binary search trees have been proposed. Notable are red-black trees, in which bottom-up rebalancing after an insertion or deletion takes O(1) amortized time and O(1) rotations worst-case. But the design space of balanced trees has not been fully explored. We introduce the rank-balanced tree, a relaxation of AVL trees. Rank-balanced trees can be rebalanced bottom-up after an insertion or deletion in O(1) amortized time and at most two rotations worst-case, in contrast to red-black trees, which need up to three rotations per deletion. Rebalancing can also be done top-down with fixed lookahead in O(1) amortized time. Using a novel analysis that relies on an exponential potential function, we show that both bottom-up and top-down rebalancing modify nodes exponentially infrequently in their heights.

Keywords

Binary Tree Current Node Search Step Search Path Rank Difference 
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. 1.
    Adel’son-Vel’skii, G.M., Landis, E.M.: An algorithm for the organization of information. Sov. Math. Dokl. 3, 1259–1262 (1962)Google Scholar
  2. 2.
    Andersson, A.: Balanced search trees made simple. In: Dehne, F., Sack, J.-R., Santoro, N. (eds.) WADS 1993. LNCS, vol. 709, pp. 60–71. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  3. 3.
    Bayer, R.: Binary B-trees for virtual memory. In: SIGFIDET, pp. 219–235 (1971)Google Scholar
  4. 4.
    Bayer, R.: Symmetric binary B-trees: Data structure and maintenance algorithms. Acta Inf. 1, 290–306 (1972)MathSciNetCrossRefMATHGoogle Scholar
  5. 5.
    Brown, M.R.: A storage scheme for height-balanced trees. Inf. Proc. Lett., 231–232 (1978)Google Scholar
  6. 6.
    Foster, C.C.: A study of avl trees. Technical Report GER-12158, Goodyear Aerospace Corp. (1965)Google Scholar
  7. 7.
    Guibas, L.J., Sedgewick, R.: A dichromatic framework for balanced trees. In: FOCS, pp. 8–21 (1978)Google Scholar
  8. 8.
    Knuth, D.E.: The Art of Computer Programming, Sorting and Searching, vol. 3. Addison-Wesley, Reading (1973)MATHGoogle Scholar
  9. 9.
    Nievergelt, J., Reingold, E.M.: Binary search trees of bounded balance. SIAM J. on Comput., 33–43 (1973)Google Scholar
  10. 10.
    Olivié, H.J.: A new class of balanced search trees: Half balanced binary search trees. ITA 16(1), 51–71 (1982)MathSciNetMATHGoogle Scholar
  11. 11.
    Sedgewick, R.: Left-leaning red-black trees, http://www.cs.princeton.edu/rs/talks/LLRB/LLRB.pdf
  12. 12.
    Skiena, S.S.: The Algorithm Design Manual. Springer, Heidelberg (1998)MATHGoogle Scholar
  13. 13.
    Tarjan, R.E.: Updating a balanced search tree in O(1) rotations. Inf. Proc. Lett. 16(5), 253–257 (1983)MathSciNetCrossRefMATHGoogle Scholar
  14. 14.
    Tarjan, R.E.: Amortized computational complexity. SIAM J. Algebraic and Disc. Methods 6, 306–318 (1985)MathSciNetCrossRefMATHGoogle Scholar
  15. 15.
    Tarjan, R.E.: Efficient top-down updating of red-black trees. Technical Report TR-006-85, Department of Computer Science, Princeton University (1985)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Bernhard Haeupler
    • 2
  • Siddhartha Sen
    • 1
  • Robert E. Tarjan
    • 1
    • 3
  1. 1.Princeton UniversityUSA
  2. 2.Massachusetts Institute of TechnologyUSA
  3. 3.HP LaboratoriesPalo AltoUSA

Personalised recommendations