English
Related papers

Related papers: Inducing the LCP-Array

200 papers

This paper presents a general technique for optimally transforming any dynamic data structure that operates on atomic and indivisible keys by constant-time comparisons, into a data structure that handles unbounded-length keys whose…

Data Structures and Algorithms · Computer Science 2013-06-04 Amihood Amir , Gianni Franceschini , Roberto Grossi , Tsvi Kopelowitz , Moshe Lewenstein , Noa Lewenstein

The run-length compressed Burrows-Wheeler transform (RLBWT) used in conjunction with the backward search introduced in the FM index is the centerpiece of most compressed indexes working on highly-repetitive data sets like biological…

Data Structures and Algorithms · Computer Science 2021-10-05 Jin Jie Deng , Wing-Kai Hon , Dominik Köppl , Kunihiko Sadakane

Given two strings $T$ and $S$ and a set of strings $P$, for each string $p \in P$, consider the unique substrings of $T$ that have $p$ as their prefix and $S$ as their suffix. Two problems then come to mind; the first problem being the…

Data Structures and Algorithms · Computer Science 2022-04-19 Laurentius Leonard , Ken Tanaka

The notions of synchronizing and partitioning sets are recently introduced variants of locally consistent parsings with great potential in problem-solving. In this paper we propose a deterministic algorithm that constructs for a given…

Data Structures and Algorithms · Computer Science 2024-04-23 Dmitry Kosolobov , Nikita Sivukhin

We present a simple algorithm for computing the document array given a string collection and its suffix array as input. Our algorithm runs in linear time using constant additional space for strings from constant alphabets.

Data Structures and Algorithms · Computer Science 2020-09-10 Felipe A. Louza

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 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

The problem of Text Indexing is a fundamental algorithmic problem in which one wishes to preprocess a text in order to quickly locate pattern queries within the text. In the ever evolving world of dynamic and on-line data, there is also a…

Data Structures and Algorithms · Computer Science 2012-08-21 Tsvi Kopelowitz

We investigate the relationship between several enumeration complexity classes and focus in particular on problems having enumeration algorithms with incremental and polynomial delay (IncP and DelayP respectively). We show that, for some…

Computational Complexity · Computer Science 2017-07-04 Florent Capelli , Yann Strozecki

Sampling (evenly) the suffixes from the suffix array is an old idea trading the pattern search time for reduced index space. A few years ago Claude et al. showed an alphabet sampling scheme allowing for more efficient pattern searches…

Data Structures and Algorithms · Computer Science 2014-12-04 Szymon Grabowski , Marcin Raniszewski

We consider the problem of constructing fast and small parallel prefix adders for non-uniform input arrival times. This problem arises whenever the adder is embedded into a more complex circuit, e. g. a multiplier. Most previous results are…

Hardware Architecture · Computer Science 2014-11-12 Stephan Held , Sophie Spirkl

Longest common extension queries (often called longest common prefix queries) constitute a fundamental building block in multiple string algorithms, for example computing runs and approximate pattern matching. We show that a sequence of $q$…

Data Structures and Algorithms · Computer Science 2016-04-08 Paweł Gawrychowski , Tomasz Kociumaka , Wojciech Rytter , Tomasz Waleń

Sorting is a fundamental algorithmic pre-processing technique which often allows to represent data more compactly and, at the same time, speeds up search queries on it. In this paper, we focus on the well-studied problem of sorting and…

Data Structures and Algorithms · Computer Science 2023-04-24 Sung-Hwan Kim , Francisco Olivares , Nicola Prezza

We present the first worst-case linear-time algorithm to compute the Lempel-Ziv 78 factorization of a given string over an integer alphabet. Our algorithm is based on nearest marked ancestor queries on the suffix tree of the given string.…

Data Structures and Algorithms · Computer Science 2015-02-02 Yuto Nakashima , Tomohiro I , Shunsuke Inenaga , Hideo Bannai , Masayuki Takeda

We introduce a compressed suffix array representation that, on a text $T$ of length $n$ over an alphabet of size $\sigma$, can be built in $O(n)$ deterministic time, within $O(n\log\sigma)$ bits of working space, and counts the number of…

Data Structures and Algorithms · Computer Science 2017-09-05 J. Ian Munro , Gonzalo Navarro , Yakov Nekrich

In this article, we give a precise mathematical meaning to `linear? time' that matches experimental behaviour of the algorithm. The sorting algorithm is not our own, it is a variant of radix sort with counting sort as a subroutine. The true…

Computational Complexity · Computer Science 2019-01-01 Laurent Lyaudet

A suffix tree is able to efficiently locate a pattern in an indexed string, but not in general the most recent copy of the pattern in an online stream, which is desirable in some applications. We study the most general version of the…

Data Structures and Algorithms · Computer Science 2014-07-15 N. Jesper Larsson

Suffix tree construction algorithms based on suffix links are popular because they are simple to implement, can operate online in linear time, and because the suffix links are often convenient for pattern matching. We present an approach…

Data Structures and Algorithms · Computer Science 2014-07-15 N. Jesper Larsson , Kasper Fuglsang , Kenneth Karlsson

The suffix array is a classic full-text index, combining effectiveness with simplicity. We discuss three approaches aiming to improve its efficiency even more: changes to the navigation, data layout and adding extra data. In short, we show…

Data Structures and Algorithms · Computer Science 2016-07-28 Tomasz Kowalski , Szymon Grabowski , Kimmo Fredriksson , Marcin Raniszewski

We extend the left-to-right Lyndon factorisation of a word to the left Lyndon tree construction of a Lyndon word. It yields an algorithm to sort the prefixes of a Lyndon word according to the infinite ordering defined by Dolce et al.…

Data Structures and Algorithms · Computer Science 2020-11-26 Golnaz Badkobeh , Maxime Crochemore