English
Related papers

Related papers: Linear Time Online Algorithms for Constructing Lin…

200 papers

Suffix trees are one of the most versatile data structures in stringology, with many applications in bioinformatics. Their main drawback is their size, which can be tens of times larger than the input sequence. Much effort has been put into…

Data Structures and Algorithms · Computer Science 2017-12-18 Andrea Farruggia , Travis Gagie , Gonzalo Navarro , Simon J. Puglisi , Jouni Sirén

Suffix trees are an important data structure at the core of optimal solutions to many fundamental string problems, such as exact pattern matching, longest common substring, matching statistics, and longest repeated substring. Recent lines…

Data Structures and Algorithms · Computer Science 2022-08-31 Nicola Rizzo , Alexandru I. Tomescu , Alberto Policriti

Tasks that model the relation between pairs of tokens in a string are a vital part of understanding natural language. Such tasks, in general, require exhaustive pair-wise comparisons of tokens, thus having a quadratic runtime complexity in…

Computation and Language · Computer Science 2023-12-13 Tianyu Liu , Afra Amini , Mrinmaya Sachan , Ryan Cotterell

In this work, we tackle a natural variation of the String Matching Problem on the case of a dynamic pattern, that is, given a static text $T$ and a pattern $P$, we want to support character additions and deletions to the pattern, and after…

Data Structures and Algorithms · Computer Science 2025-06-16 Bruno Monteiro , Vinicius dos Santos

We propose algorithms that, given the input string of length $n$ over integer alphabet of size $\sigma$, construct the Burrows-Wheeler transform (BWT), the permuted longest-common-prefix (PLCP) array, and the LZ77 parsing in…

Data Structures and Algorithms · Computer Science 2020-12-09 Dominik Kempa

In this paper we are interested in indexing texts for substring matching queries with one edit error. That is, given a text $T$ of $n$ characters over an alphabet of size $\sigma$, we are asked to build a data structure that answers the…

Data Structures and Algorithms · Computer Science 2014-08-25 Djamal Belazzougui

Two strings $x$ and $y$ over $\Sigma \cup \Pi$ of equal length are said to \emph{parameterized match} (\emph{p-match}) if there is a renaming bijection $f:\Sigma \cup \Pi \rightarrow \Sigma \cup \Pi$ that is identity on $\Sigma$ and…

We consider document listing on string collections, that is, finding in which strings a given pattern appears. In particular, we focus on repetitive collections: a collection of size $N$ over alphabet $[1,\sigma]$ is composed of $D$ copies…

Data Structures and Algorithms · Computer Science 2018-11-15 Gonzalo Navarro

A curious property of randomized log-space search algorithms is that their outputs are often longer than their workspace. This leads to the question: how can we reproduce the results of a randomized log space computation without storing the…

Computational Complexity · Computer Science 2018-03-14 Ofer Grossman , Yang P. Liu

Computing the LZ factorization (or LZ77 parsing) of a string is a computational bottleneck in many diverse applications, including data compression, text indexing, and pattern discovery. We describe new linear time LZ factorization…

Data Structures and Algorithms · Computer Science 2020-12-11 Juha Kärkkäinen , Dominik Kempa , Simon J. Puglisi

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

We present parallel algorithms for exact and approximate pattern matching with suffix arrays, using a CREW-PRAM with $p$ processors. Given a static text of length $n$, we first show how to compute the suffix array interval of a given…

Data Structures and Algorithms · Computer Science 2016-06-09 Johannes Fischer , Dominik Köppl , Florian Kurpicz

In this paper we present a 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 string.…

Data Structures and Algorithms · Computer Science 2013-11-08 Artur Jeż

The well-known dictionary-based algorithms of the Lempel-Ziv (LZ) 77 family are the basis of several universal lossless compression techniques. These algorithms are asymmetric regarding encoding/decoding time and memory requirements, with…

Data Structures and Algorithms · Computer Science 2009-12-31 Artur Ferreira , Arlindo Oliveira , Mario Figueiredo

Levin Tree Search (LTS) (Orseau et al., 2018) is a search algorithm for deterministic environments that uses a user-specified policy to guide the search. It comes with a formal guarantee on the number of search steps (node visits) for…

Artificial Intelligence · Computer Science 2025-03-12 Laurent Orseau , Marcus Hutter , Levi H. S. Lelis

We introduce a new algorithm for constructing the generalized suffix array of a collection of highly similar strings. As a first step, we construct a compressed representation of the matching statistics of the collection with respect to a…

Data Structures and Algorithms · Computer Science 2024-04-16 Zsuzsanna Lipták , Francesco Masillo , Simon J. Puglisi

A new method for constructing minimum-redundancy binary prefix codes is described. Our method does not explicitly build a Huffman tree; instead it uses a property of optimal prefix codes to compute the codeword lengths corresponding to the…

Data Structures and Algorithms · Computer Science 2016-09-30 Ahmed Belal , Amr Elmasry

We present a new algorithm for subsequence matching in grammar compressed strings. Given a grammar of size $n$ compressing a string of size $N$ and a pattern string of size $m$ over an alphabet of size $\sigma$, our algorithm uses…

Data Structures and Algorithms · Computer Science 2014-06-06 Philip Bille , Patrick Hagge Cording , Inge Li Gørtz

Building a spanning tree, minimum spanning tree (MST), and BFS tree in a distributed network are fundamental problems which are still not fully understood in terms of time and communication cost. x The first work to succeed in computing a…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-07-30 Ali Mashreghi , Valerie King

Lempel-Ziv (LZ77) factorization is a fundamental problem in string processing: Greedily partition a given string $T$ from left to right into blocks (called phrases) so that each phrase is either the leftmost occurrence of a letter or the…

Data Structures and Algorithms · Computer Science 2025-06-19 Dominik Kempa , Tomasz Kociumaka