O(log log n)-competitive dynamic binary search trees

The Dynamic Optimality Conjecture [ST85] states that splay trees are competitive (within a constant competitive factor) among the class of all binary search tree (BST) algorithms. Despite 20 years of research this conjecture is still unresolved. Recently, Demaine et al. [DHIP04] suggested searching for alternative algorithms which have small but non-constant competitive factors. They proposed Tango, a BST algorithm which is nearly dynamically optimal - its competitive ratio is O(log log n) instead of a constant. Unfortunately, for many access patterns, such as random and sequential, Tango is worse than other BST algorithms by a factor of log log n.In this paper, we introduce the multi-splay tree (MST) data structure, which is the first O(log log n)-competitive BST to simultaneously achieve O(log n) amortized cost and O(log2 n) worst-case cost per query. We also prove the sequential access lemma for MSTs, which states that sequentially accessing all keys takes linear time. Thus, MSTs are O(log log n)-competitive like Tango but, unlike Tango, require only O(log n) amortized time per access in an arbitrary sequence and only O(1) amortized time per access during a sequential access sequence.Furthermore, we generalize the standard framework for competitive analysis of BST algorithms to include updates (insertions and deletions) in addition to queries. In doing so, we extend the lower bound of Wilber [Wil89] and Demaine et al. [DHIP04] to handle these update operations. We show how MSTs can be modified to support these update operations and be O(log log n)-competitive in the new framework while maintaining the rest of the properties above.

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

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

[3]  Rajamani Sundar,et al.  On the deque conjecture for the splay algorithm , 1992, Comb..

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

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

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

[7]  Rajamani Sundar Twists, turns, cascades, deque conjecture, and scanning theorem , 1989, 30th Annual Symposium on Foundations of Computer Science.

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

[9]  Amr Elmasry,et al.  On the sequential access theorem and deque conjecture for splay trees , 2004, Theor. Comput. Sci..

[10]  Robert E. Tarjan,et al.  Rotation distance, triangulations, and hyperbolic geometry , 1986, STOC '86.

[11]  Derick Wood,et al.  A Note on Some Tree Similarity Measures , 1982, Inf. Process. Lett..

[12]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.

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

[14]  Adam Tauman Kalai,et al.  Static Optimality and Dynamic Search-Optimality in Lists and Trees , 2002, SODA '02.

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