skip to main content
10.1145/3014812.3014836acmotherconferencesArticle/Chapter ViewAbstractPublication Pagesaus-cswConference Proceedingsconference-collections
research-article

Practical adaptive search trees with performance bounds

Published: 31 January 2017 Publication History

Abstract

Dynamic binary search trees are a fundamental class of dictionary data structure. Amongst these, the splay tree is space efficient and has amortized running-time bounds. In practice, splay trees perform best when the access sequence has regions of atypical items. Continuing a tradition started by Sleator and Tarjan themselves, we introduce a relaxed version, the α-Frequent Tree, that performs fewer rotations than the standard splay tree. We prove that the α-frequent trees inherit many of the distribution-sensitive properties of splay trees.
Meanwhile, Conditional Rotation trees [Cheetham et al.] maintain access counters - one at each node - and have an excellent experimental reputation. By adding access counters to α-frequent trees, we create Splay Conditional Rotation (SCR) trees. These have the experimental performance of other counter-based trees, and the amortized bounds of splay trees.

References

[1]
G. Adelson-Velskii and E. Landis. An algorithm for the organization of information. Soviet Mathematics Doklady, 3:1259--1263, 1962.
[2]
T. Aho, T. Elomaa, and J. Kujala. Reducing splaying by taking advantage of working sets. In Workshop on Experimental Algorithms, pages 1--13. Springer, 2008.
[3]
S. Albers and M. Karpinski. Randomized splay trees: Theoretical and experimental results. Information Processing Letters, 81(4):213--221, 2002.
[4]
B. Allen and I. Munro. Self-organizing binary search trees. Journal of the ACM, 25(4):526--535, 1978.
[5]
J. Bell and G. Gupta. An evaluation of self-adjusting binary search tree techniques. Software: Practice and Experience, 23(4):369--382, 1993.
[6]
J. Bitner. Heuristics that dynamically organize data structures. SIAM Journal on Computing, 8:82--110, 1979.
[7]
R. Cheetham, B. Oommen, and D. Ng. Adaptive structuring of binary search trees using conditional rotations. IEEE Transactions on Knowledge and Data Engineering, 5(4):695--704, 1993.
[8]
R. Cole. On the dynamic finger conjecture for splay trees. Part II: The proof. SIAM Journal on Computing, 30(1):44--85, 2000.
[9]
R. Cole, B. Mishra, J. Schmidt, and A. Siegel. On the dynamic finger conjecture for splay trees. Part I: Splay sorting log n-block sequences. SIAM Journal on Computing, 30(1):1--43, 2000.
[10]
E. Demaine, D. Harmon, J. Iacono, and M. Patraşcu. Dynamic optimality---almost. SIAM Journal on Computing, 37:240--251, 2007.
[11]
J. Derryberry and D. Sleator. Skip-splay: Toward achieving the unified bound in the bst model. In Workshop on Algorithms and Data Structures, pages 194--205. Springer, 2009.
[12]
M. Fürer. Randomized splay trees. In ACM-SIAM Symposium on Discrete Algorithms, pages 903--904, 1999.
[13]
G. Georgakopoulos. Chain-splay trees, or, how to achieve and prove log log n-competitiveness by splaying. Information Processing Letters, 106(1):37--43, 2008.
[14]
L. Guibas and R. Sedgewick. A dichromatic framework for balanced trees. In IEEE Symposium on Foundations of Computer Science, pages 8--21, 1978.
[15]
B. Haeupler, S. Sen, and R. Tarjan. Rank-balanced trees. In Workshop on Algorithms and Data Structures, pages 351--362. Springer, 2009.
[16]
D. Hawking, N. Craswell, and P. Thistlewaite. Overview of TREC-7 very large collection track. In E. Voorhees and D. Harman, editors, Proceedings of TREC-7, pages 91--104, 1998.
[17]
M. Hofri and H. Shachnai. Efficient reorganization of binary search trees. In Italian Conference on Algorithms and Complexity, pages 152--166, 1994.
[18]
J. Iacono. Alternatives to splay trees with O(log n) worst-case access times. In ACM-SIAM Symposium on Discrete Algorithms, pages 516--522, 2001.
[19]
D. Knuth. The Art of Computer Programming, Volume 3: Sorting and Searching. Addison-Wesley, second edition, 1998.
[20]
K. Mehlhorn. Dynamic binary search. SIAM Journal on Computing, 8:175--198, 1979.
[21]
J. Oommen, 2011. Personal communication.
[22]
B. Pfaff. Performance analysis of BSTs in system software. ACM SIGMETRICS Performance Evaluation Review, 32(1):410--411, 2004. Full version on benpfaff.org, accessed August 2016.
[23]
D. Sleator and R. Tarjan. Self-adjusting binary search trees. Journal of the ACM, 32(3):652--686, 1985.
[24]
C. Wang, J. Derryberry, and D. Sleator. O(log log n)-competitive dynamic binary search trees. In ACM-SIAM Symposium on Discrete Algorithms, pages 374--383, 2006.
[25]
H. Williams, J. Zobel, and S. Heinz. Self-adjusting trees in practice for large text collections. Software: Practice and Experience, 31(10):925--939, 2001.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ACSW '17: Proceedings of the Australasian Computer Science Week Multiconference
January 2017
615 pages
ISBN:9781450347686
DOI:10.1145/3014812
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 31 January 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. amortized analysis
  2. search trees
  3. splay trees

Qualifiers

  • Research-article

Funding Sources

Conference

ACSW 2017
ACSW 2017: Australasian Computer Science Week 2017
January 30 - February 3, 2017
Geelong, Australia

Acceptance Rates

ACSW '17 Paper Acceptance Rate 78 of 156 submissions, 50%;
Overall Acceptance Rate 204 of 424 submissions, 48%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 164
    Total Downloads
  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 17 Feb 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media