Belga B-Trees

We revisitself-adjustingexternal memory tree data structures, which combine the optimal (and practical) worst-case I/O performances of B-trees, while adapting to the online distribution of queries. Our approach is analogous to undergoing efforts in the BST model, where Tango Trees (Demaine et al., SIAM J. Comput. 37 (1), 240–251, 2007 ) were shown to be O ( log log N ) $O(\log \log N)$ -competitive with the runtime of the best offline binary search tree on every sequence of searches. Here we formalize the B-Tree model as a natural generalization of the BST model. We prove lower bounds for the B-Tree model, and introduce a B-Tree model data structure, the Belga B-tree, that executes any sequence of searches within a O ( log log N ) $O(\log \log N)$ factor of the best offline B-tree model algorithm, provided B = log O ( 1 ) N $B=\log ^{O(1)}N$ . We also show how to transform any static BST into a static B-tree which is faster by a Θ ( log B ) ${\varTheta }(\log B)$ factor; the transformation is randomized and we show that randomization is necessary to obtain any significant speedup.

[1]  M. AdelsonVelskii,et al.  AN ALGORITHM FOR THE ORGANIZATION OF INFORMATION , 1963 .

[2]  R. Bayer,et al.  Organization and maintenance of large ordered indices , 1970, SIGFIDET '70.

[3]  Leonidas J. Guibas,et al.  A dichromatic framework for balanced trees , 1978, 19th Annual Symposium on Foundations of Computer Science (sfcs 1978).

[4]  Robert E. Tarjan,et al.  Sequential access in splay trees takes linear time , 1985, Comb..

[5]  Robert E. Tarjan,et al.  Self-adjusting binary search trees , 1985, JACM.

[6]  Robert E. Tarjan,et al.  Amortized efficiency of list update and paging rules , 1985, CACM.

[7]  Robert E. Wilber Lower bounds for accessing binary search trees with rotations , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[8]  Alok Aggarwal,et al.  The input/output complexity of sorting and related problems , 1988, CACM.

[9]  Robert E. Wilber Lower Bounds for Accessing Binary Search Trees with Rotations , 1989, SIAM J. Comput..

[10]  Richard Cole,et al.  On the dynamic finger conjecture for splay trees , 1990, STOC '90.

[11]  Murray Sherk Self-Adjusting k-ary Search Trees , 1995, J. Algorithms.

[12]  Richard Cole,et al.  On the Dynamic Finger Conjecture for Splay Trees. Part I: Splay Sorting log n-Block Sequences , 1995, SIAM J. Comput..

[13]  Richard Cole,et al.  On the Dynamic Finger Conjecture for Splay Trees. Part II: The Proof , 2000, SIAM J. Comput..

[14]  John Iacono,et al.  Distribution-sensitive data structures , 2001 .

[15]  John Iacono,et al.  Alternatives to splay trees with O(log n) worst-case access times , 2001, SODA '01.

[16]  Erik D. Demaine,et al.  Dynamic Optimality - Almost , 2004, FOCS.

[17]  Erik D. Demaine,et al.  Dynamic optimality - almost [competitive online binary search tree] , 2007, 45th Annual IEEE Symposium on Foundations of Computer Science.

[18]  Rudolf Bayer,et al.  Organization and maintenance of large ordered indexes , 1972, Acta Informatica.

[19]  Daniel Dominic Sleator,et al.  O(log log n)-competitive dynamic binary search trees , 2006, SODA '06.

[20]  Richard Cole,et al.  A unified access bound on comparison-based dynamic dictionaries , 2007, Theor. Comput. Sci..

[21]  Prosenjit Bose,et al.  Dynamic optimality for skip lists and B-trees , 2008, SODA '08.

[22]  Daniel M. Kane,et al.  The geometry of binary search trees , 2009, SODA.

[23]  Amr Elmasry,et al.  On the hierarchy of distribution-sensitive properties for data structures , 2013, Acta Informatica.

[24]  John Iacono,et al.  In Pursuit of the Dynamic Optimality Conjecture , 2013, Space-Efficient Data Structures, Streams, and Algorithms.

[25]  Erik D. Demaine,et al.  Worst-Case Optimal Tree Layout in External Memory , 2013, Algorithmica.

[26]  Prosenjit Bose,et al.  A History of Distribution-Sensitive Data Structures , 2013, Space-Efficient Data Structures, Streams, and Algorithms.

[27]  Alejandro López-Ortiz,et al.  Space-Efficient Data Structures, Streams, and Algorithms Papers in Honor of J. Ian Munro, on the Occasion of His 66th Birthday , 2013 .

[28]  Erik D. Demaine,et al.  Combining Binary Search Trees , 2013, ICALP.

[29]  Alejandro López-Ortiz,et al.  Space-Efficient Data Structures, Streams, and Algorithms , 2013 .

[30]  Pat Morin,et al.  The Fresh-Finger Property , 2013, ArXiv.

[31]  Xin-She Yang,et al.  Introduction to Algorithms , 2021, Nature-Inspired Optimization Algorithms.

[32]  Kurt Mehlhorn,et al.  The landscape of bounds for binary search trees , 2016, ArXiv.

[33]  John Iacono,et al.  Weighted dynamic finger in binary search trees , 2016, SODA.

[34]  Prosenjit Bose,et al.  The Power and Limitations of Static Binary Search Trees with Lazy Finger , 2013, Algorithmica.

[35]  Kurt Mehlhorn,et al.  Multi-finger binary search trees , 2018, ISAAC.