English
Related papers

Related papers: Linear-time Computation of DAWGs, Symmetric Indexi…

200 papers

A factorization $f_1, \ldots, f_m$ of a string $w$ of length $n$ is called a repetition factorization of $w$ if $f_i$ is a repetition, i.e., $f_i$ is a form of $x^kx'$, where $x$ is a non-empty string, $x'$ is a (possibly-empty) proper…

Data Structures and Algorithms · Computer Science 2024-08-09 Yuki Yonemoto , Shunsuke Inenaga

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

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…

The LCP array is an important tool in stringology, allowing to speed up pattern matching algorithms and enabling compact representations of the suffix tree. Recently, Conte et al. [DCC 2023] and Cotumaccio et al. [SPIRE 2023] extended the…

Data Structures and Algorithms · Computer Science 2024-04-23 Jarno Alanko , Davide Cenzato , Nicola Cotumaccio , Sung-Hwan Kim , Giovanni Manzini , Nicola Prezza

The width $k$ of a directed acyclic graph (DAG) $G = (V, E)$ equals the largest number of pairwise non-reachable vertices. Computing the width dates back to Dilworth's and Fulkerson's results in the 1950s, and is doable in quadratic time in…

Data Structures and Algorithms · Computer Science 2021-06-25 Manuel Cáceres , Massimo Cairo , Brendan Mumey , Romeo Rizzi , Alexandru I. Tomescu

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

We resolve the randomized one-way communication complexity of Dynamic Time Warping (DTW) distance. We show that there is an efficient one-way communication protocol using $\widetilde{O}(n/\alpha)$ bits for the problem of computing an…

Data Structures and Algorithms · Computer Science 2019-03-11 Vladimir Braverman , Moses Charikar , William Kuszmaul , David P. Woodruff , Lin F. Yang

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

Burrows-Wheeler transform (BWT) is an invertible text transformation that, given a text $T$ of length $n$, permutes its symbols according to the lexicographic order of suffixes of $T$. BWT is one of the most heavily studied algorithms in…

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

We propose a new approach for calculating the Lempel-Ziv factorization of a string, based on run length encoding (RLE). We present a conceptually simple off-line algorithm based on a variant of suffix arrays, as well as an on-line algorithm…

Data Structures and Algorithms · Computer Science 2015-03-20 Jun'ichi Yamamoto , Hideo Bannai , Shunsuke Inenaga , Masayuki Takeda

An absent word of a word y of length n is a word that does not occur in y. It is a minimal absent word if all its proper factors occur in y. Minimal absent words have been computed in genomes of organisms from all domains of life; their…

Data Structures and Algorithms · Computer Science 2014-07-01 Carl Barton , Alice Heliou , Laurent Mouchard , Solon P. Pissis

Depth First Search (DFS) tree is a fundamental data structure for solving graph problems. The DFS tree of a graph $G$ with $n$ vertices and $m$ edges can be built in $O(m+n)$ time. Till date, only a few algorithms have been designed for…

Data Structures and Algorithms · Computer Science 2017-05-09 Surender Baswana , Ayush Goel , Shahbaz Khan

The linear-size suffix tries (LSTries) [Crochemore et al., TCS 2016] are a version of suffix trees in which the edge labels are single characters, yet are able to perform pattern matching queries in optimal time. Instead of explicitly…

Data Structures and Algorithms · Computer Science 2024-08-09 Shunsuke Inenaga

Indexing strings via prefix (or suffix) sorting is, arguably, one of the most successful algorithmic techniques developed in the last decades. Can indexing be extended to languages? The main contribution of this paper is to initiate the…

Data Structures and Algorithms · Computer Science 2020-12-17 Jarno Alanko , Giovanna D'Agostino , Alberto Policriti , Nicola Prezza

Given a string on an integer alphabet, we present an algorithm that computes the set of all distinct squares belonging to this string in time linear to the string length. As an application, we show how to compute the tree topology of the…

Data Structures and Algorithms · Computer Science 2017-02-21 Hideo Bannai , Shunsuke Inenaga , Dominik Köppl

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

Dynamic time warping distance (DTW) is a widely used distance measure between time series. The best known algorithms for computing DTW run in near quadratic time, and conditional lower bounds prohibit the existence of significantly faster…

Data Structures and Algorithms · Computer Science 2019-05-27 William Kuszmaul

Yao graphs are geometric spanners that connect each point of a given point set to its nearest neighbor in each of $k$ cones drawn around it. Yao graphs were introduced to construct minimum spanning trees in $d$ dimensional spaces. Moreover,…

Computational Geometry · Computer Science 2023-03-15 Daniel Funke , Peter Sanders

The suffix array is a data structure that finds numerous applications in string processing problems for both linguistic texts and biological data. It has been introduced as a memory efficient alternative for suffix trees. The suffix array…

Data Structures and Algorithms · Computer Science 2013-07-05 Sanguthevar Rajasekaran , Marius Nicolae

The weighted ancestor problem on a rooted node-weighted tree $T$ is a generalization of the classic predecessor problem: construct a data structure for a set of integers that supports fast predecessor queries. Both problems are known to…

Data Structures and Algorithms · Computer Science 2024-05-24 Philip Bille , Yakov Nekrich , Solon P. Pissis