Poketree: A Dynamically Competitive Data Structure with Good Worst-Case Performance

We introduce a new O(lg lg n)-competitive binary search tree data structure called poketree that has the advantage of attaining, under worst-case analysis, O(lg n) cost per operation, including updates. Previous O(lg lg n)-competitive binary search tree data structures have not achieved O(lg n) worst-case cost per operation. A standard data structure such as red-black tree or deterministic skip list can be augmented with the dynamic links of a poketree to make it O(lg lg n)-competitive. Our approach also uses less memory per node than previous competitive data structures supporting updates.

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

[2]  J. Ian Munro,et al.  Deterministic skip lists , 1992, SODA '92.

[3]  Rudolf Bayer,et al.  Symmetric binary B-Trees: Data structure and maintenance algorithms , 1972, Acta Informatica.

[4]  William Pugh,et al.  Skip Lists: A Probabilistic Alternative to Balanced Trees , 1989, WADS.

[5]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

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

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

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

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

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

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

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

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