Advertisement

Self-Adjusting Binary Search Trees: What Makes Them Tick?

  • Parinya Chalermsook
  • Mayank Goswami
  • László Kozma
  • Kurt Mehlhorn
  • Thatchaphol Saranurak
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9294)

Abstract

Splay trees (Sleator and Tarjan [11]) satisfy the so-called access lemma. Many of the nice properties of splay trees follow from it. What makes self-adjusting binary search trees (BSTs) satisfy the access lemma? After each access, self-adjusting BSTs replace the search path by a tree on the same set of nodes (the after-tree). We identify two simple combinatorial properties of the search path and the after-tree that imply the access lemma. Our main result

(i) implies the access lemma for all minimally self-adjusting BST algorithms for which it was known to hold: splay trees and their generalization to the class of local algorithms (Subramanian [12], Georgakopoulos and McClurkin [7]), as well as Greedy BST, introduced by Demaine et al. [5] and shown to satisfy the access lemma by Fox [6],

(ii) implies that BST algorithms based on “strict” depth-halving satisfy the access lemma, addressing an open question that was raised several times since 1985, and

(iii) yields an extremely short proof for the O(logn loglogn) amortized access cost for the path-balance heuristic (proposed by Sleator), matching the best known bound (Balasubramanian and Raman [2]) to a lower-order factor.

One of our combinatorial properties is locality. We show that any BST-algorithm that satisfies the access lemma via the sum-of-log (SOL) potential is necessarily local. The other property states that the sum of the number of leaves of the after-tree plus the number of side alternations in the search path must be at least a constant fraction of the length of the search path. We show that a weak form of this property is necessary for sequential access to be linear.

Keywords

Local Algorithm Search Path Binary Search Tree Access Path Left Child 
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.
    Allen, B., Munro, J.I.: Self-organizing binary search trees. J. ACM 25(4), 526–535 (1978)MathSciNetzbMATHGoogle Scholar
  2. 2.
    Balasubramanian, R.: Venkatesh Raman. Path balance heuristic for self-adjusting binary search trees. In: Proceedings of FSTTCS, pp. 338–348 (1995)Google Scholar
  3. 3.
    Chalermsook, P., Goswami, M., Kozma, L., Mehlhorn, K., Saranurak, T.: Self-adjusting binary search trees: What makes them tick? CoRR, abs/1503.03105 (2015)Google Scholar
  4. 4.
    Cole, R.: On the dynamic finger conjecture for splay trees. part ii: The proof. SIAM Journal on Computing 30(1), 44–85 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Demaine, E.D., Harmon, D., Iacono, J., Kane, D.M., Patrascu, M.: The geometry of binary search trees. In: SODA 2009, pp. 496–505 (2009)Google Scholar
  6. 6.
    Fox, K.: Upper Bounds for Maximally Greedy Binary Search Trees. In: Dehne, F., Iacono, J., Sack, J.-R. (eds.) WADS 2011. LNCS, vol. 6844, pp. 411–422. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  7. 7.
    Georgakopoulos, G.F., McClurkin, D.J.: Generalized template splay: A basic theory and calculus. Comput. J. 47(1), 10–19 (2004)CrossRefzbMATHGoogle Scholar
  8. 8.
    Lucas, J.M.: Canonical forms for competitive binary search tree algorithms. Tech. Rep. DCS-TR-250, Rutgers University (1988)Google Scholar
  9. 9.
    Munro, J.I.: On the competitiveness of linear search. In: Paterson, M. (ed.) ESA 2000. LNCS, vol. 1879, pp. 338–345. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  10. 10.
    Pettie, S.: Splay trees, Davenport-Schinzel sequences, and the deque conjecture. In: SODA 2008, pp. 1457–1467 (2008)Google Scholar
  11. 11.
    Sleator, D.D., Tarjan, R.E.: Self-adjusting binary search trees. J. ACM 32(3), 652–686 (1985)Google Scholar
  12. 12.
    Subramanian, A.: An explanation of splaying. J. Algorithms 20(3), 512–525 (1996)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Tarjan, R.E.: Sequential access in splay trees takes linear time. Combinatorica 5(4), 367–378 (1985)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  • Parinya Chalermsook
    • 1
  • Mayank Goswami
    • 1
  • László Kozma
    • 2
  • Kurt Mehlhorn
    • 1
  • Thatchaphol Saranurak
    • 3
  1. 1.Max-Planck Institute for InformaticsSaarbrückenGermany
  2. 2.Department of Computer ScienceSaarland UniversitySaarbrückenGermany
  3. 3.KTH Royal Institute of TechnologyStockholmSweden

Personalised recommendations