De-amortizing Binary Search Trees
Prosenjit Bose, S\'ebastien Collette, Rolf Fagerberg, Stefan, Langerman

TL;DR
This paper introduces a general method to transform various binary search tree algorithms into worst-case efficient versions, matching the best known amortized bounds while ensuring O(log n) worst-case search time.
Contribution
The authors present a novel de-amortization technique applicable to any BST algorithm, achieving worst-case bounds without sacrificing asymptotic performance.
Findings
Transforms Splay Trees to worst-case O(log n) searches
Creates a BST with O(log log n) competitiveness and optimal theorems
Proves existence of a worst-case optimal BST if one exists
Abstract
We present a general method for de-amortizing essentially any Binary Search Tree (BST) algorithm. In particular, by transforming Splay Trees, our method produces a BST that has the same asymptotic cost as Splay Trees on any access sequence while performing each search in O(log n) worst case time. By transforming Multi-Splay Trees, we obtain a BST that is O(log log n) competitive, satisfies the scanning theorem, the static optimality theorem, the static finger theorem, the working set theorem, and performs each search in O(log n) worst case time. Moreover, we prove that if there is a dynamically optimal BST algorithm, then there is a dynamically optimal BST algorithm that answers every search in O(log n) worst case time.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsOptimization and Search Problems · Algorithms and Data Compression · Complexity and Algorithms in Graphs
