English
Related papers

Related papers: Linear Index for Logarithmic Search-Time for any S…

200 papers

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

The suffix tree is arguably the most fundamental data structure on strings: introduced by Weiner (SWAT 1973) and McCreight (JACM 1976), it allows solving a myriad of computational problems on strings in linear time. Motivated by its large…

Data Structures and Algorithms · Computer Science 2026-05-07 Ruben Becker , Davide Cenzato , Travis Gagie , Sung-Hwan Kim , Ragnar Groot Koerkamp , Giovanni Manzini , Nicola Prezza

The Suffix Array SA(S) of a string S[1 ... n] is an array containing all the suffixes of S sorted by lexicographic order. The suffix array is one of the most well known indexing data structures, and it functions as a key tool in many string…

Data Structures and Algorithms · Computer Science 2020-07-15 Amihood Amir , Itai Boneh

Pattern matching is the most central task for text indices. Most recent indices leverage compression techniques to make pattern matching feasible for massive but highly-compressible datasets. Within this kind of indices, we propose a new…

Data Structures and Algorithms · Computer Science 2021-05-31 Tooru Akagi , Dominik Köppl , Yuto Nakashima , Shunsuke Inenaga , Hideo Bannai , Masayuki Takeda

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

We consider how to index strings, trees and graphs for jumbled pattern matching when we are asked to return a match if one exists. For example, we show how, given a tree containing two colours, we can build a quadratic-space index with…

Data Structures and Algorithms · Computer Science 2013-04-23 Ferdinando Cicalese , Travis Gagie , Emanuele Giaquinta , Eduardo Sany Laber , Zsuzsanna Lipták , Romeo Rizzi , Alexandru I. Tomescu

The suffix array is the key to efficient solutions for myriads of string processing problems in different applications domains, like data compression, data mining, or Bioinformatics. With the rapid growth of available data, suffix array…

Data Structures and Algorithms · Computer Science 2016-10-11 Timo Bingmann , Simon Gog , Florian Kurpicz

The field of succinct data structures has flourished over the last 16 years. Starting from the compressed suffix array (CSA) by Grossi and Vitter (STOC 2000) and the FM-index by Ferragina and Manzini (FOCS 2000), a number of generalizations…

Data Structures and Algorithms · Computer Science 2016-09-22 Djamal Belazzougui , Fabio Cunial , Juha Kärkkäinen , Veli Mäkinen

A simple linear-time algorithm for constructing a linear context-free tree grammar of size O(rg + r g log (n/r g))for a given input tree T of size n is presented, where g is the size of a minimal linear context-free tree grammar for T, and…

Data Structures and Algorithms · Computer Science 2018-10-09 Artur Jeż , Markus Lohrey

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

It is widely assumed that $O(m+\lg \sigma)$ is the best one can do for finding a pattern of length $m$ in a compacted trie storing strings over an alphabet of size $\sigma$, if one insists on linear-size data structures and deterministic…

Data Structures and Algorithms · Computer Science 2013-02-15 Johannes Fischer , Pawel Gawrychowski

In this article we present a protocol for building dense numeration in network with unknown topology. Additionally to a unique number each node as result of the protocol will get information about a spanning tree. This spanning tree is…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-04-03 Khuziev Ilnur

Alphabetic codes and binary search trees are combinatorial structures that abstract search procedures in ordered sets endowed with probability distributions. In this paper, we design new linear-time algorithms to construct alphabetic codes,…

Information Theory · Computer Science 2024-07-24 Roberto Bruno , Roberto De Prisco , Alfredo De Santis , Ugo Vaccaro

We give the first data structure for the problem of maintaining a dynamic set of n elements drawn from a partially ordered universe described by a tree. We define the Line-Leaf Tree, a linear-sized data structure that supports the…

Data Structures and Algorithms · Computer Science 2011-05-03 Brent Heeringa , Marius Catalin Iordan , Louis Theran

We consider a sliding window $W$ over a stream of characters from some alphabet of constant size. The user wants to perform deterministic substring matching on the current sliding window content and obtain positions of the matches. We…

Data Structures and Algorithms · Computer Science 2018-09-07 Andrej Brodnik , Matevž Jekovec

A run in a string is a maximal periodic substring. For example, the string $\texttt{bananatree}$ contains the runs $\texttt{anana} = (\texttt{an})^{3/2}$ and $\texttt{ee} = \texttt{e}^2$. There are less than $n$ runs in any length-$n$…

Data Structures and Algorithms · Computer Science 2021-02-18 Jonas Ellert , Johannes Fischer

We consider construction of the suffix tree and the directed acyclic word graph (DAWG) indexing data structures for a collection $\mathcal{T}$ of texts, where a new symbol may be appended to any text in $\mathcal{T} = \{T_1, \ldots, T_K\}$,…

Data Structures and Algorithms · Computer Science 2018-07-13 Takuya Takagi , Shunsuke Inenaga , Hiroki Arimura , Dany Breslauer , Diptarama Hendrian

We consider the NP-hard Tree Containment problem that has important applications in phylogenetics. The problem asks if a given leaf-labeled network contains a subdivision of a given leaf-labeled tree. We develop a fast algorithm for the…

Computational Complexity · Computer Science 2017-02-22 Mathias Weller

Tree structures are very often used data structures. Among ordered types of trees there are many variants whose basic operations such as insert, delete, search, delete-min are characterized by logarithmic time complexity. In the article I…

Data Structures and Algorithms · Computer Science 2007-08-23 David S. Planeta

We consider the problem of maintaining a collection of strings while efficiently supporting splits and concatenations on them, as well as comparing two substrings, and computing the longest common prefix between two suffixes. This problem…

Data Structures and Algorithms · Computer Science 2024-08-15 Zsuzsanna Lipták , Francesco Masillo , Gonzalo Navarro