A nearly optimal randomized algorithm for explorable heap selection
Sander Borst, Daniel Dadush, Sophie Huiberts, Danish Kashaev
TL;DR
This work tackles explorable heap selection, the online problem of finding the $n$th smallest value in a heap-ordered infinite binary tree with travel-cost equal to edge traversals. It introduces a randomized algorithm that runs in $O(n\log(n)^3)$ time while using $O(\log n)$ space, achieving near-optimal performance under the given memory constraint. The approach deploys three subroutines (DFS, Roots, GoodValues) to bound and progressively discover all $n$ good nodes via a doubling-into-n strategy and random-root exploration, with a careful analysis showing expected time improvements over prior randomized approaches. A matching lower bound of $\Omega\bigl(n\log_s(n)\bigr)$ is established for any algorithm operating with $s$ memory, underscoring the near-optimality of the proposed method for space-bounded settings. The results have implications for memory-efficient node selection in branch-and-bound and related online exploration problems.
Abstract
Explorable heap selection is the problem of selecting the $n$th smallest value in a binary heap. The key values can only be accessed by traversing through the underlying infinite binary tree, and the complexity of the algorithm is measured by the total distance traveled in the tree (each edge has unit cost). This problem was originally proposed as a model to study search strategies for the branch-and-bound algorithm with storage restrictions by Karp, Saks and Widgerson (FOCS '86), who gave deterministic and randomized $n\cdot \exp(O(\sqrt{\log{n}}))$ time algorithms using $O(\log(n)^{2.5})$ and $O(\sqrt{\log n})$ space respectively. We present a new randomized algorithm with running time $O(n\log(n)^3)$ using $O(\log n)$ space, substantially improving the previous best randomized running time at the expense of slightly increased space usage. We also show an $Ω(\log(n)n/\log(\log(n)))$ for any algorithm that solves the problem in the same amount of space, indicating that our algorithm is nearly optimal.
