English

Multi-finger binary search trees

Data Structures and Algorithms 2018-09-10 v1

Abstract

We study multi-finger binary search trees (BSTs), a far-reaching extension of the classical BST model, with connections to the well-studied kk-server problem. Finger search is a popular technique for speeding up BST operations when a query sequence has locality of reference. BSTs with multiple fingers can exploit more general regularities in the input. In this paper we consider the cost of serving a sequence of queries in an optimal (offline) BST with kk fingers, a powerful benchmark against which other algorithms can be measured. We show that the kk-finger optimum can be matched by a standard dynamic BST (having a single root-finger) with an O(logk)O(\log{k}) factor overhead. This result is tight for all kk, improving the O(k)O(k) factor implicit in earlier work. Furthermore, we describe new online BSTs that match this bound up to a (logk)O(1)(\log{k})^{O(1)} factor. Previously only the "one-finger" special case was known to hold for an online BST (Iacono, Langerman, 2016; Cole et al., 2000). Splay trees, assuming their conjectured optimality (Sleator and Tarjan, 1983), would have to match our bounds for all kk. Our online algorithms are randomized and combine techniques developed for the kk-server problem with a multiplicative-weights scheme for learning tree metrics. To our knowledge, this is the first time when tools developed for the kk-server problem are used in BSTs. As an application of our kk-finger results, we show that BSTs can efficiently serve queries that are close to some recently accessed item. This is a (restricted) form of the unified property (Iacono, 2001) that was previously not known to hold for any BST algorithm, online or offline.

Keywords

Cite

@article{arxiv.1809.01759,
  title  = {Multi-finger binary search trees},
  author = {Parinya Chalermsook and Mayank Goswami and László Kozma and Kurt Mehlhorn and Thatchaphol Saranurak},
  journal= {arXiv preprint arXiv:1809.01759},
  year   = {2018}
}

Comments

To be presented at ISAAC 2018. Also extends (and supersedes parts of) arXiv:1603.04892, with possible text overlaps