A Simple Algorithm for Optimal Search Trees with Two-Way Comparisons
Marek Chrobak, Mordecai Golin, J. Ian Munro, Neal E. Young

TL;DR
This paper introduces a straightforward polynomial-time algorithm for constructing optimal search trees with two-way comparisons, extending previous work to include unsuccessful queries, and relies on a new structural theorem for correctness.
Contribution
It provides the first polynomial-time algorithm for the full variant of two-way comparison search trees, simplifying previous solutions and broadening applicability.
Findings
The algorithm runs in O(n^4) time.
It extends to include unsuccessful queries.
A new structural theorem underpins the correctness.
Abstract
We present a simple -time algorithm for computing optimal search trees with two-way comparisons. The only previous solution to this problem, by Anderson et al., has the same running time, but is significantly more complicated and is restricted to the variant where only successful queries are allowed. Our algorithm extends directly to solve the standard full variant of the problem, which also allows unsuccessful queries and for which no polynomial-time algorithm was previously known. The correctness proof of our algorithm relies on a new structural theorem for two-way-comparison search trees.
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.
