Skip to main content
Log in

The Power and Limitations of Static Binary Search Trees with Lazy Finger

  • Published:
Algorithmica Aims and scope Submit manuscript

Abstract

A static binary search tree where every search starts from where the previous one ends (lazy finger) is considered. Such a search method is more powerful than that of the classic optimal static trees, where every search starts from the root (root finger), and less powerful than when rotations are allowed—where finding the best rotation based tree is the topic of the dynamic optimality conjecture of Sleator and Tarjan. The runtime of the classic root-finger tree can be expressed in terms of the entropy of the distribution of the searches, but we show that this is not the case for the optimal lazy finger tree. A non-entropy based asymptotically-tight expression for the runtime of the optimal lazy finger trees is derived, and a dynamic programming-based method is presented to compute the optimal tree.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Notes

  1. When multiplied by \(\frac{1}{\lg 3}\), as the information theory lower bound holds for binary decisions and as observed in [16] needs to be adjusted to the ternary decisions that occur at each node when traversing a BST.

References

  1. Adelson-Velskij, G.M., Landis, E.M.: An algorithm for the organization of information. Doklady Akademii Nauk USSR 146(2), 263–266 (1962)

  2. Alon, N., Spencer, J.: The Probabilistic Method. Wiley, London (1992)

    MATH  Google Scholar 

  3. Aragon, C.R., Seidel, R.: Randomized search trees. In: FOCS, pp. 540–545. IEEE Computer Society (1989)

  4. Bender, M.A., Duan, Z., Iacono, J., Jing, W.: A locality-preserving cache-oblivious dynamic dictionary. J. Algorithms 53(2), 115–136 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  5. Bronson, N.G., Casper, J., Chafi, H., Olukotun, K.: A practical concurrent binary search tree. In: Govindarajan, R., Padua, D.A., Hall, M.W. (eds.) PPOPP, pp. 257–268. ACM (2010)

  6. Clark, D.R., Munro, J.I.: Efficient suffix trees on secondary storage (extended abstract). In: Tardos, E. (ed.) SODA, pp. 383–391. ACM/SIAM (1996)

  7. Cole, R.: On the dynamic finger conjecture for splay trees. part ii: the proof. SIAM J. Comput. 30(1), 44–85 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  8. Cole, R., Mishra, B., Schmidt, J.P., Siegel, A.: On the dynamic finger conjecture for splay trees. part i: splay sorting log n-block sequences. SIAM J. Comput. 30(1), 1–43 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  9. Demaine, E.D., Iacono, J., Langerman, S.: Worst-case optimal tree layout in a memory hierarchy. CoRR, cs.DS/0410048 (2004)

  10. Demaine, E.D., Iacono, J., Langerman, S., Özkan, O.: Combining binary search trees. In: Proceedings of the 40th International Colloquium on Automata, Languages and Programming (ICALP 2013), Riga, Latvia, 8–12 July 2013, pp. 388–399 (2013)

  11. Fredman, M.L.: Two applications of a probabilistic search technique: sorting x + y and building balanced search trees. In: Rounds, W.C., Martin, N., Carlyle, J.W., Harrison, M.A. (eds.) STOC, pp. 240–244. ACM (1975)

  12. Gil, J., Itai, A.: How to pack trees. J. Algorithms 32(2), 108–132 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  13. Guibas, L.J., Sedgewick, R.: A dichromatic framework for balanced trees. In: FOCS, pp. 8–21. IEEE Computer Society (1978)

  14. Iacono, J., Mulzer, W.: A static optimality transformation with applications to planar point location. Int. J. Comput. Geom. Appl. 22(4), 327–340 (2012)

    Article  MathSciNet  Google Scholar 

  15. Knuth, D.E.: Optimum binary search trees. Acta Inf. 1, 14–25 (1971)

    Article  MATH  Google Scholar 

  16. Mehlhorn, K.: Nearly optimal binary search trees. Acta Inf. 5, 287–295 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  17. Seidel, R., Aragon, C.R.: Randomized search trees. Algorithmica 16(4/5), 464–497 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  18. Sleator, D.D., Tarjan, R.E.: Self-adjusting binary search trees. J. ACM 32(3), 652–686 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  19. Peter van Emde Boas: Preserving order in a forest in less than logarithmic time and linear space. Inf. Process. Lett. 6(3), 80–82 (1977)

    Article  MATH  Google Scholar 

  20. Wilber, R.E.: Lower bounds for accessing binary search trees with rotations. SIAM J. Comput. 18(1), 56–67 (1989)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to John Iacono.

Additional information

P. Bose: Research supported in part by NSERC.

J. Iacono: Research partially completed at NYU School of Engineering with support from NSF Grants 1319648, 1229185 and 1533564. Research partially completed at Université Libre de Bruxelles with support from FNRS and the the Commission for Educational Exchange between the United States of America, Belgium, and Luxembourg. Research partially completed at and supported by MADALGO, a center of the Danish National Research Foundation.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Bose, P., Douïeb, K., Iacono, J. et al. The Power and Limitations of Static Binary Search Trees with Lazy Finger. Algorithmica 76, 1264–1275 (2016). https://doi.org/10.1007/s00453-016-0224-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00453-016-0224-x

Keywords

Navigation