English
Related papers

Related papers: The Parameterized Suffix Tray

200 papers

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

We consider the problem of indexing a string $t$ of length $n$ to report the occurrences of a query pattern $p$ containing $m$ characters and $j$ wildcards. Let $occ$ be the number of occurrences of $p$ in $t$, and $\sigma$ the size of the…

Data Structures and Algorithms · Computer Science 2012-09-07 Philip Bille , Inge Li Goertz , Hjalte Wedel Vildhøj , Søren Vind

Indexing a set of strings for prefix search or membership queries is a fundamental task with many applications such as information retrieval or database systems. A classic abstract data type for modelling such an index is a trie. Due to the…

Data Structures and Algorithms · Computer Science 2024-03-11 Hideo Bannai , Keisuke Goto , Shunsuke Kanda , Dominik Köppl

In a \emph{weighted sequence}, for every position of the sequence and every letter of the alphabet a probability of occurrence of this letter at this position is specified. Weighted sequences are commonly used to represent imprecise or…

Data Structures and Algorithms · Computer Science 2017-08-28 Carl Barton , Tomasz Kociumaka , Chang Liu , Solon P. Pissis , Jakub Radoszewski

In this paper we study a variant of string pattern matching which deals with tuples of strings known as \textit{multi-track strings}. Multi-track strings are a generalisation of strings (or \textit{single-track strings}) that have primarily…

Data Structures and Algorithms · Computer Science 2019-12-02 Carl Barton , Ewan Birney , Tomas Fitzgerald

We revisit the classic border tree data structure [Gu, Farach, Beigel, SODA 1994] that answers the following prefix-suffix queries on a string $T$ of length $n$ over an integer alphabet $\Sigma=[0,\sigma)$: for any $i,j \in [0,n)$ return…

Data Structures and Algorithms · Computer Science 2024-11-07 Solon P. Pissis

Given a text $T$ of length $n$ and a pattern $P$ of length $m$, the string matching problem is a task to find all occurrences of $P$ in $T$. In this study, we propose an algorithm that solves this problem in $O((n + m)q)$ time considering…

Data Structures and Algorithms · Computer Science 2020-04-14 Satoshi Kobayashi , Diptarama Hendrian , Ryo Yoshinaka , Ayumi Shinohara

Suffix tree (and the closely related suffix array) are fundamental structures capturing all substrings of a given text essentially by storing all its suffixes in the lexicographical order. In some applications, we work with a subset of $b$…

Data Structures and Algorithms · Computer Science 2016-08-03 Paweł Gawrychowski , Tomasz Kociumaka

We show that the compressed suffix array and the compressed suffix tree of a string $T$ can be built in $O(n)$ deterministic time using $O(n\log\sigma)$ bits of space, where $n$ is the string length and $\sigma$ is the alphabet size.…

Data Structures and Algorithms · Computer Science 2016-11-15 J. Ian Munro , Gonzalo Navarro , Yakov Nekrich

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

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

We characterize those strings whose suffix arrays are based on arithmetic progressions, in particular, arithmetically progressed permutations where all pairs of successive entries of the permutation have the same difference modulo the…

Combinatorics · Mathematics 2021-07-07 Jacqueline W. Daykin , Dominik Köppl , David Kübel , Florian Stober

Text indexing is a classical algorithmic problem that has been studied for over four decades: given a text $T$, pre-process it off-line so that, later, we can quickly count and locate the occurrences of any string (the query pattern) in $T$…

Data Structures and Algorithms · Computer Science 2020-12-15 Nicola Prezza

A weighted string over an alphabet of size $\sigma$ is a string in which a set of letters may occur at each position with respective occurrence probabilities. Weighted strings, also known as position weight matrices or uncertain sequences,…

Data Structures and Algorithms · Computer Science 2015-12-09 Carl Barton , Chang Liu , Solon P. Pissis

This paper addresses the online exact string matching problem which consists in finding all occurrences of a given pattern p in a text t. It is an extensively studied problem in computer science, mainly due to its direct applications to…

Data Structures and Algorithms · Computer Science 2010-12-14 Simone Faro , Thierry Lecroq

Packing several characters into one computer word is a simple and natural way to compress the representation of a string and to speed up its processing. Exploiting this idea, we propose an index for a packed string, based on a {\em sparse…

Data Structures and Algorithms · Computer Science 2015-03-19 Roman Kolpakov , Gregory Kucherov , Tatiana Starikovskaya

The fundamental question considered in algorithms on strings is that of indexing, that is, preprocessing a given string for specific queries. By now we have a number of efficient solutions for this problem when the queries ask for an exact…

Data Structures and Algorithms · Computer Science 2023-04-04 Paweł Gawrychowski , Garance Gourdel , Tatiana Starikovskaya , Teresa Anna Steiner

Given a pattern $P$ and a text $T$, both strings over a binary alphabet, the binary jumbled string matching problem consists in telling whether any permutation of $P$ occurs in $T$. The indexed version of this problem, i.e., preprocessing a…

Data Structures and Algorithms · Computer Science 2013-05-09 Emanuele Giaquinta , Szymon Grabowski

An \itbf{indeterminate string} (or, more simply, just a \itbf{string}) $\s{x} = \s{x}[1..n]$ on an alphabet $\Sigma$ is a sequence of nonempty subsets of $\Sigma$. We say that $\s{x}[i_1]$ and $\s{x}[i_2]$ \itbf{match} (written $\s{x}[i_1]…

Data Structures and Algorithms · Computer Science 2015-03-02 Ali Alatabbi , M. Sohel Rahman , W. F. Smyth

The classic string indexing problem is to preprocess a string $S$ into a compact data structure that supports efficient subsequent pattern matching queries, that is, given a pattern string $P$, report all occurrences of $P$ within $S$. In…

Data Structures and Algorithms · Computer Science 2024-02-15 Philip Bille , Inge Li Gørtz , Max Rishøj Pedersen , Eva Rotenberg , Teresa Anna Steiner