English
Related papers

Related papers: Inducing the Lyndon Array

200 papers

We present a new on-line algorithm for computing the Lempel-Ziv factorization of a string that runs in $O(N\log N)$ time and uses only $O(N\log\sigma)$ bits of working space, where $N$ is the length of the string and $\sigma$ is the size of…

Data Structures and Algorithms · Computer Science 2013-05-28 Jun'ichi Yamamoto , Tomohiro I , Hideo Bannai , Shunsuke Inenaga , Masayuki Takeda

We show how to build several data structures of central importance to string processing, taking as input the Burrows-Wheeler transform (BWT) and using small extra working space. Let $n$ be the text length and $\sigma$ be the alphabet size.…

Data Structures and Algorithms · Computer Science 2019-08-14 Nicola Prezza , Giovanna Rosone

We present a new algorithm for computing the Lempel-Ziv Factorization (LZ77) of a given string of length $N$ in linear time, that utilizes only $N\log N + O(1)$ bits of working space, i.e., a single integer array, for constant size integer…

Data Structures and Algorithms · Computer Science 2013-10-08 Keisuke Goto , Hideo Bannai

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

A seed in a word is a relaxed version of a period in which the occurrences of the repeating subword may overlap. We show a linear-time algorithm computing a linear-size representation of all the seeds of a word (the number of seeds might be…

Data Structures and Algorithms · Computer Science 2019-03-15 Tomasz Kociumaka , Marcin Kubica , Jakub Radoszewski , Wojciech Rytter , Tomasz Walen

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

Given a sequence of integers, we want to find a longest increasing subsequence of the sequence. It is known that this problem can be solved in $O(n \log n)$ time and space. Our goal in this paper is to reduce the space consumption while…

Data Structures and Algorithms · Computer Science 2017-12-27 Masashi Kiyomi , Hirotaka Ono , Yota Otachi , Pascal Schweitzer , Jun Tarui

We consider an index data structure for similar strings. The generalized suffix tree can be a solution for this. The generalized suffix tree of two strings $A$ and $B$ is a compacted trie representing all suffixes in $A$ and $B$. It has…

Data Structures and Algorithms · Computer Science 2013-05-09 Joong Chae Na , Heejin Park , Maxime Crochemore , Jan Holub , Costas S. Iliopoulos , Laurent Mouchard , Kunsoo Park

In the classic longest common substring (LCS) problem, we are given two strings $S$ and $T$, each of length at most $n$, over an alphabet of size $\sigma$, and we are asked to find a longest string occurring as a fragment of both $S$ and…

Data Structures and Algorithms · Computer Science 2025-11-18 Panagiotis Charalampopoulos , Tomasz Kociumaka , Jakub Radoszewski , Solon P. Pissis

A deterministic BSP algorithm for constructing the suffix array of a given string is presented, based on a technique which we call accelerated sampling. It runs in optimal O(n/p) local computation and communication, and requires a near…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-02-26 Matthew Felice Pace , Alexander Tiskin

In the last decades, the necessity to process massive amounts of textual data fueled the development of compressed text indexes: data structures efficiently answering queries on a given text while occupying space proportional to the…

Data Structures and Algorithms · Computer Science 2024-09-24 Dominik Kempa , Tomasz Kociumaka

We first review how we can store a run-length compressed suffix array (RLCSA) for a text $T$ of length $n$ over an alphabet of size $\sigma$ whose Burrows-Wheeler Transform (BWT) consists of $r$ runs in $O \left( \rule{0ex}{2ex} r \log (n /…

Data Structures and Algorithms · Computer Science 2025-04-22 Nathaniel K. Brown , Travis Gagie , Giovanni Manzini , Gonzalo Navarro , Marinella Sciortino

It is well known that n integers in the range [1,n^c] can be sorted in O(n) time in the RAM model using radix sorting. More generally, integers in any range [1,U] can be sorted in O(n sqrt{loglog n}) time. However, these algorithms use O(n)…

Data Structures and Algorithms · Computer Science 2007-06-29 Gianni Franceschini , S. Muthukrishnan , Mihai Patrascu

We present the first worst-case linear time algorithm that directly computes the parameterized suffix and LCP arrays for constant sized alphabets. Previous algorithms either required quadratic time or the parameterized suffix tree to be…

Data Structures and Algorithms · Computer Science 2019-06-04 Noriki Fujisato , Yuto Nakashima , Shunsuke Inenaga , Hideo Bannai , Masayuki Takeda

Although real-world text datasets, such as DNA sequences, are far from being uniformly random, average-case string searching algorithms perform significantly better than worst-case ones in most applications of interest. In this paper, we…

Data Structures and Algorithms · Computer Science 2018-01-16 Lorraine A. K. Ayad , Panagiotis Charalampopoulos , Costas S. Iliopoulos , Solon P. Pissis

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

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

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

We study the problem of indexing text with wildcard positions, motivated by the challenge of aligning sequencing data to large genomes that contain millions of single nucleotide polymorphisms (SNPs)---positions known to differ between…

Data Structures and Algorithms · Computer Science 2011-01-28 Chris Thachuk