English
Related papers

Related papers: Managing Unbounded-Length Keys in Comparison-Drive…

200 papers

We present a general transformation for combining a constant number of binary search tree data structures (BSTs) into a single BST whose running time is within a constant factor of the minimum of any "well-behaved" bound on the running time…

Data Structures and Algorithms · Computer Science 2013-04-30 Erik D. Demaine , John Iacono , Stefan Langerman , Özgür Özkan

The observed frequency of the longest proper prefix, the longest proper suffix, and the longest infix of a word $w$ in a given sequence $x$ can be used for classifying $w$ as avoided or overabundant. The definitions used for the expectation…

This paper considers fully dynamic graph algorithms with both faster worst case update time and sublinear space. The fully dynamic graph connectivity problem is the following: given a graph on a fixed set of n nodes, process an online…

Data Structures and Algorithms · Computer Science 2015-09-23 David Gibb , Bruce Kapron , Valerie King , Nolan Thorn

This paper shows the weighted matching problem on general graphs can be solved in time $O(n(m + n\log n))$ for $n$ and $m$ the number of vertices and edges, respectively. This was previously known only for bipartite graphs. The crux is a…

Data Structures and Algorithms · Computer Science 2016-11-24 Harold N. Gabow

The suffix array is a fundamental data structure for many applications that involve string searching and data compression. Designing time/space-efficient suffix array construction algorithms has attracted significant attention and…

Data Structures and Algorithms · Computer Science 2018-11-12 Zhize Li , Jian Li , Hongwei Huo

Data augmentation is widely used for training a neural network given little labeled data. A common practice of augmentation training is applying a composition of multiple transformations sequentially to the data. Existing augmentation…

Machine Learning · Computer Science 2024-08-27 Dongyue Li , Kailai Chen , Predrag Radivojac , Hongyang R. Zhang

Detecting all the strings that occur in a text more frequently or less frequently than expected according to an IID or a Markov model is a basic problem in string mining, yet current algorithms are based on data structures that are either…

Data Structures and Algorithms · Computer Science 2015-08-13 Djamal Belazzougui , Fabio Cunial

Based on the Breslauer-Italiano online suffix tree construction algorithm (2013) with double logarithmic worst-case guarantees on the update time per letter, we develop near-real-time algorithms for several classical problems on strings,…

Data Structures and Algorithms · Computer Science 2026-02-18 Dominik Köppl , Gregory Kucherov

We describe a data structure that supports access, rank and select queries, as well as symbol insertions and deletions, on a string $S[1,n]$ over alphabet $[1..\sigma]$ in time $O(\lg n/\lg\lg n)$, which is optimal even on binary sequences…

Data Structures and Algorithms · Computer Science 2013-02-04 Gonzalo Navarro , Yakov Nekrich

Augmenting an existing sequential data structure with extra information to support greater functionality is a widely used technique. For example, search trees are augmented to build sequential data structures like order-statistic trees,…

Data Structures and Algorithms · Computer Science 2024-05-20 Panagiota Fatourou , Eric Ruppert

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

Data structures that realize a dictionary are characterized by three basic instructions: (1) Insert (a new entry <key,value>). (2) Search by a key, returning the associated value. (3) Delete an entry. Known realizations are hashing schemes…

Logic · Mathematics 2016-09-06 Josef Schoenbrunner

We show that the compressed suffix array and the compressed suffix tree for a string of length $n$ over an integer alphabet of size $\sigma\leq n$ can both be built in $O(n)$ (randomized) time using only $O(n\log\sigma)$ bits of working…

Data Structures and Algorithms · Computer Science 2016-05-24 Djamal Belazzougui

Dynamic tree data structures maintain a forest while supporting insertion and deletion of edges and a broad set of queries in $O(\log n)$ time per operation. Such data structures are at the core of many modern algorithms. Recent work has…

Data Structures and Algorithms · Computer Science 2025-06-23 Humza Ikram , Andrew Brady , Daniel Anderson , Guy Blelloch

The suffix trees are fundamental data structures for various kinds of string processing. The suffix tree of a string $T$ of length $n$ has $O(n)$ nodes and edges, and the string label of each edge is encoded by a pair of positions in $T$.…

Data Structures and Algorithms · Computer Science 2019-04-11 Diptarama Hendrian , Takuya Takagi , Shunsuke Inenaga

We give new deterministic bounds for fully-dynamic graph connectivity. Our data structure supports updates (edge insertions/deletions) in $O(\log^2n/\log\log n)$ amortized time and connectivity queries in $O(\log n/\log\log n)$ worst-case…

Data Structures and Algorithms · Computer Science 2012-09-26 Christian Wulff-Nilsen

The B-tree is a fundamental secondary index structure that is widely used for answering one-dimensional range reporting queries. Given a set of $N$ keys, a range query can be answered in $O(\log_B \nm + \frac{K}{B})$ I/Os, where $B$ is the…

Data Structures and Algorithms · Computer Science 2008-11-27 Ke Yi

We study the following substring suffix selection problem: given a substring of a string T of length n, compute its k-th lexicographically smallest suffix. This a natural generalization of the well-known question of computing the maximal…

Data Structures and Algorithms · Computer Science 2013-09-24 Maxim Babenko , Paweł Gawrychowski , Tomasz Kociumaka , Tatiana Starikovskaya

It is shown how to enhance any data structure in the pointer model to make it confluently persistent, with efficient query and update times and limited space overhead. Updates are performed in $O(\log n)$ amortized time, and following a…

Data Structures and Algorithms · Computer Science 2011-04-18 Sebastien Collette , John Iacono , Stefan Langerman

Big data, encompassing extensive datasets, has seen rapid expansion, notably with a considerable portion being textual data, including strings and texts. Simple compression methods and standard data structures prove inadequate for…

Data Structures and Algorithms · Computer Science 2024-11-11 Takaaki Nishimoto , Yasuo Tabei