English
Related papers

Related papers: An O(loglog n)-Competitive Binary Search Tree with…

200 papers

We revisit the classic border tree data structure [Gu, Farach, Beigel, SODA 1994] that answers the following prefix-suffix queries on a string $T$ of length $n$ over an integer alphabet $\Sigma=[0,\sigma)$: for any $i,j \in [0,n)$ return…

Data Structures and Algorithms · Computer Science 2024-11-07 Solon P. Pissis

Let $n$ denote the number of elements currently in a data structure. An in-place heap is stored in the first $n$ locations of an array, uses $O(1)$ extra space, and supports the operations: minimum, insert, and extract-min. We introduce an…

Data Structures and Algorithms · Computer Science 2014-07-15 Stefan Edelkamp , Jyrki Katajainen , Amr Elmasry

In binary jumbled pattern matching we wish to preprocess a binary string $S$ in order to answer queries $(i,j)$ which ask for a substring of $S$ that is of size $i$ and has exactly $j$ 1-bits. The problem naturally generalizes to…

Data Structures and Algorithms · Computer Science 2014-07-01 Danny Hermelin , Gad M. Landau , Yuri Rabinovich , Oren Weimann

We consider the problem of estimating the conditional probability of a label in time O(log n), where n is the number of possible labels. We analyze a natural reduction of this problem to a set of binary regression problems organized in a…

Machine Learning · Computer Science 2014-08-12 Alina Beygelzimer , John Langford , Yuri Lifshits , Gregory Sorkin , Alexander L. Strehl

The random access problem for compressed strings is to build a data structure that efficiently supports accessing the character in position $i$ of a string given in compressed form. Given a grammar of size $n$ compressing a string of size…

Data Structures and Algorithms · Computer Science 2015-01-27 Patrick Hagge Cording

There are several data structures which can calculate the prefix sums of an array efficiently, while handling point updates on the array, such as Segment Trees and Binary Indexed Trees (BIT). Both these data structures can handle the these…

Data Structures and Algorithms · Computer Science 2016-12-30 Anubhav Baweja

We propose a $O(\log k \log n)$-competitive randomized algorithm for online node-weighted Steiner forest. This is essentially optimal and significantly improves over the previous bound of $O(\log^2 k \log n)$ by Hajiaghayi et al. [2017]. In…

Data Structures and Algorithms · Computer Science 2024-10-29 Sander Borst , Marek Eliáš , Moritz Venzin

We revisit self-adjusting external memory tree data structures, which combine the optimal (and practical) worst-case I/O performances of B-trees, while adapting to the online distribution of queries. Our approach is analogous to undergoing…

Data Structures and Algorithms · Computer Science 2019-03-11 Erik D. Demaine , John Iacono , Grigorios Koumoutsos , Stefan Langerman

We introduce exponential search trees as a novel technique for converting static polynomial space search structures for ordered sets into fully-dynamic linear space data structures. This leads to an optimal bound of O(sqrt(log n/loglog n))…

Data Structures and Algorithms · Computer Science 2007-05-23 Arne Andersson , Mikkel Thorup

In this paper we present novel algorithmic techniques with a O(H(N)+N/H(N)) time complexity for performing several types of queries and updates on general rooted trees, binary search trees and lists of size N. For rooted trees we introduce…

Data Structures and Algorithms · Computer Science 2013-03-25 Mugurel Ionut Andreica

We describe todolists (top-down skiplists), a variant of skiplists (Pugh 1990) that can execute searches using at most $\log_{2-\varepsilon} n + O(1)$ binary comparisons per search and that have amortized update time $O(\varepsilon^{-1}\log…

Data Structures and Algorithms · Computer Science 2014-07-31 Luis Barba , Pat Morin

Motivated by an application in computational topology, we consider a novel variant of the problem of efficiently maintaining dynamic rooted trees. This variant requires merging two paths in a single operation. In contrast to the standard…

Data Structures and Algorithms · Computer Science 2007-11-13 Loukas Georgiadis , Haim Kaplan , Nira Shafrir , Robert E. Tarjan , Renato F. Werneck

Does there exist O(1)-competitive (self-adjusting) binary search tree (BST) algorithms? This is a well-studied problem. A simple offline BST algorithm GreedyFuture was proposed independently by Lucas and Munro, and they conjectured it to be…

Data Structures and Algorithms · Computer Science 2011-02-23 Navin Goyal , Manoj Gupta

Self-adjusting data structures are a classic approach to adapting the complexity of operations to the data access distribution. While several self-adjusting variants are known for both binary search trees and B-Trees, existing constructions…

Data Structures and Algorithms · Computer Science 2023-10-10 Alexander Slastin , Dan Alistarh , Vitaly Aksenov

The $B^{\epsilon}$-tree [Brodal and Fagerberg 2003] is a simple I/O-efficient external-memory-model data structure that supports updates orders of magnitude faster than B-tree with a query performance comparable to the B-tree: for any…

Data Structures and Algorithms · Computer Science 2022-11-14 Rathish Das , John Iacono , Yakov Nekrich

We introduce a new family of priority-queue data structures: partition-based simple heaps. The structures consist of $O(\log n)$ doubly-linked lists; order is enforced among data in different lists, but the individual lists are unordered.…

Data Structures and Algorithms · Computer Science 2026-03-03 Gerth Stølting Brodal , John Iacono , Casper Moldrup Rysgaard , Sebastian Wild

A binary trie is a sequential data structure for a dynamic set on the universe $\{0,\dots,u-1\}$ supporting Search with $O(1)$ worst-case step complexity, and Insert, Delete, and Predecessor operations with $O(\log u)$ worst-case step…

Data Structures and Algorithms · Computer Science 2025-09-04 Jeremy Ko

Embeddings of graphs into distributions of trees that preserve distances in expectation are a cornerstone of many optimization algorithms. Unfortunately, online or dynamic algorithms which use these embeddings seem inherently randomized and…

Data Structures and Algorithms · Computer Science 2021-02-11 Bernhard Haeupler , D Ellis Hershkowitz , Goran Zuzic

The binary indexed tree, or Fenwick tree, is a data structure that can efficiently update values and calculate prefix sums in an array. It allows both of these operations to be performed in $O(\log_2 N)$ time. Here we present a novel data…

Data Structures and Algorithms · Computer Science 2024-03-08 Brent Harrison , Jason Necaise , Andrew Projansky , James D. Whitfield

The decision tree is one of the most fundamental programming abstractions. A commonly used type of decision tree is the alphabetic binary tree, which uses (without loss of generality) ``less than'' versus ''greater than or equal to'' tests…

Performance · Computer Science 2007-07-13 Michael B. Baer