English
Related papers

Related papers: Rank, select and access in grammar-compressed stri…

200 papers

We solve an open problem related to an optimal encoding of a straight line program (SLP), a canonical form of grammar compression deriving a single string deterministically. We show that an information-theoretic lower bound for representing…

Data Structures and Algorithms · Computer Science 2013-06-18 Yasuo Tabei , Yoshimasa Takabatake , Hiroshi Sakamoto

Encoding data structures store enough information to answer the queries they are meant to support but not enough to recover their underlying datasets. In this paper we give the first encoding data structure for the challenging problem of…

Data Structures and Algorithms · Computer Science 2017-02-21 Travis Gagie , Giovanni Manzini , Rossano Venturini

We consider the problem of decompressing the Lempel--Ziv 77 representation of a string $S$ of length $n$ using a working space as close as possible to the size $z$ of the input. The folklore solution for the problem runs in $O(n)$ time but…

Data Structures and Algorithms · Computer Science 2019-11-05 Philip Bille , Mikko Berggren Ettienne , Travis Gagie , Inge Li Gørtz , Nicola Prezza

In this paper we present a really simple linear-time algorithm constructing a context-free grammar of size O(g log (N/g)) for the input string, where N is the size of the input string and g the size of the optimal grammar generating this…

Data Structures and Algorithms · Computer Science 2014-03-19 Artur Jeż

The circular dictionary matching problem is an extension of the classical dictionary matching problem where every string in the dictionary is interpreted as a circular string: after reading the last character of a string, we can move back…

Data Structures and Algorithms · Computer Science 2025-04-07 Nicola Cotumaccio

In this paper, we present a new data structure called the packed compact trie (packed c-trie) which stores a set $S$ of $k$ strings of total length $n$ in $n \log\sigma + O(k \log n)$ bits of space and supports fast pattern matching queries…

Data Structures and Algorithms · Computer Science 2017-10-11 Takuya Takagi , Shunsuke Inenaga , Kunihiko Sadakane , Hiroki Arimura

The string indexing problem is a fundamental computational problem with numerous applications, including information retrieval and bioinformatics. It aims to efficiently solve the pattern matching problem: given a text T of length n for…

Data Structures and Algorithms · Computer Science 2025-09-03 Waseem Akram , Takuya Mieno

The problem of dictionary matching is a classical problem in string matching: given a set S of d strings of total length n characters over an (not necessarily constant) alphabet of size sigma, build a data structure so that we can match in…

Data Structures and Algorithms · Computer Science 2015-05-18 Djamal Belazzougui

We describe the first self-indexes able to count and locate pattern occurrences in optimal time within a space bounded by the size of the most popular dictionary compressors. To achieve this result we combine several recent findings,…

Data Structures and Algorithms · Computer Science 2019-09-06 Anders Roy Christiansen , Mikko Berggren Ettienne , Tomasz Kociumaka , Gonzalo Navarro , Nicola Prezza

Let s be a string whose symbols are solely available through access(i), a read-only operation that probes s and returns the symbol at position i in s. Many compressed data structures for strings, trees, and graphs, require two kinds of…

Data Structures and Algorithms · Computer Science 2010-06-29 Roberto Grossi , Alessio Orlandi , Rajeev Raman

Can we analyze data without decompressing it? As our data keeps growing, understanding the time complexity of problems on compressed inputs, rather than in convenient uncompressed forms, becomes more and more relevant. Suppose we are given…

Computational Complexity · Computer Science 2018-03-05 Amir Abboud , Arturs Backurs , Karl Bringmann , Marvin Künnemann

A key principle in string processing is local consistency: using short contexts to handle matching fragments of a string consistently. String synchronizing sets [Kempa, Kociumaka; STOC 2019] are an influential instantiation of this…

Data Structures and Algorithms · Computer Science 2026-02-13 Jonas Ellert , Tomasz Kociumaka

A 'degenerate string' is a sequence of subsets of some alphabet; it represents any string obtainable by selecting one character from each set from left to right. Recently, Alanko et al. generalized the rank-select problem to degenerate…

Data Structures and Algorithms · Computer Science 2023-12-05 Philip Bille , Inge Li Gørtz , Tord Stordalen

Let $S$ be a string of length $n$. In this paper we introduce the notion of \emph{string attractor}: a subset of the string's positions $[1,n]$ such that every distinct substring of $S$ has an occurrence crossing one of the attractor's…

Data Structures and Algorithms · Computer Science 2017-09-20 Nicola Prezza

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

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

In this work, we study the limits of compressed data structures, i.e., structures that support various queries on an input text $T\in\Sigma^n$ using space proportional to the size of $T$ in compressed form. Nearly all fundamental queries…

Data Structures and Algorithms · Computer Science 2025-10-23 Dominik Kempa , Tomasz Kociumaka

We revisit two well-known algorithmic problems on strings: computing a shortest unique substring (SUS) and a shortest absent substring (SAS) of a string $S$ of length $n$. Both problems admit folklore $\mathcal{O}(n)$-time solutions using…

Data Structures and Algorithms · Computer Science 2026-05-07 Panagiotis Charalampopoulos , Manal Mohamed , Solon P. Pissis , Hilde Verbeek , Wiktor Zuba

In this paper we present algorithms for several string problems in the Congested Clique model. In the Congested Clique model, $n$ nodes (computers) are used to solve some problem. The input to the problem is distributed among the nodes, and…

Data Structures and Algorithms · Computer Science 2025-04-14 Shay Golan , Matan Kraus

An occurrence of a repeated substring $u$ in a string $S$ is called a net occurrence if extending the occurrence to the left or to the right decreases the number of occurrences to 1. The net frequency (NF) of a repeated substring $u$ in a…

Data Structures and Algorithms · Computer Science 2026-01-01 Shunsuke Inenaga

The membership problem asks to maintain a set $S\subseteq[u]$, supporting insertions and membership queries, i.e., testing if a given element is in the set. A data structure that computes exact answers is called a dictionary. When a (small)…

Data Structures and Algorithms · Computer Science 2020-04-28 Mingmou Liu , Yitong Yin , Huacheng Yu