English
Related papers

Related papers: c-trie++: A Dynamic Trie Tailored for Fast Prefix …

200 papers

The domains of data mining and knowledge discovery make use of large amounts of textual data, which need to be handled efficiently. Specific problems, like finding the maximum weight ordered common subset of a set of ordered sets or…

Data Structures and Algorithms · Computer Science 2009-12-07 Mugurel Ionut Andreica , Nicolae Tapus

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

An indexed sequence of strings is a data structure for storing a string sequence that supports random access, searching, range counting and analytics operations, both for exact matches and prefix search. String sequences lie at the core of…

Data Structures and Algorithms · Computer Science 2012-04-17 Roberto Grossi , Giuseppe Ottaviano

Dictionary learning is a branch of signal processing and machine learning that aims at finding a frame (called dictionary) in which some training data admits a sparse representation. The sparser the representation, the better the…

Machine Learning · Computer Science 2015-02-27 Luc Le Magoarou , Rémi Gribonval

Given a string $T$, it is known that its suffix tree can be represented using the compact directed acyclic word graph (CDAWG) with $e_T$ arcs, taking overall $O(e_T+e_{{\overline{T}}})$ words of space, where ${\overline{T}}$ is the reverse…

Data Structures and Algorithms · Computer Science 2017-05-25 Djamal Belazzougui , Fabio Cunial

Tries are popular data structures for storing a set of strings, where common prefixes are represented by common root-to-node paths. Over fifty years of usage have produced many variants and implementations to overcome some of their…

Data Structures and Algorithms · Computer Science 2011-12-06 Roberto Grossi , Giuseppe Ottaviano

We suggest a method for holding a dictionary data structure, which maps keys to values, in the spirit of Bloom Filters. The space requirements of the dictionary we suggest are much smaller than those of a hashtable. We allow storing n keys,…

Data Structures and Algorithms · Computer Science 2008-04-14 Ely Porat

A subsequence of a word $w$ is a word $u$ such that $u = w[i_1] w[i_2] , \dots w[i_{|u|}]$, for some set of indices $1 \leq i_1 < i_2 < \dots < i_k \leq |w|$. A word $w$ is $k$-subsequence universal over an alphabet $\Sigma$ if every word…

Data Structures and Algorithms · Computer Science 2023-04-11 Duncan Adamson

Let $\D = $$ \{d_1,d_2,...d_D\}$ be a given set of $D$ string documents of total length $n$, our task is to index $\D$, such that the $k$ most relevant documents for an online query pattern $P$ of length $p$ can be retrieved efficiently. We…

Data Structures and Algorithms · Computer Science 2012-04-03 Wing-Kai Hon , Rahul Shah , Sharma V. Thankachan

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

In the Dictionary-based String Matching (DSM) problem, a retrieval system has access to a source sequence and stores the position of a certain number of strings in a posting table. When a user inquires the position of a string, the…

Information Retrieval · Computer Science 2018-11-26 M. Suri , S. Rini

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

The suffix array $SA[1..n]$ of a text $T$ of length $n$ is a permutation of $\{1,\ldots,n\}$ describing the lexicographical ordering of suffixes of $T$, and it is considered to be among of the most important data structures in string…

Data Structures and Algorithms · Computer Science 2022-06-17 Dominik Kempa , Tomasz Kociumaka

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

The circular dictionary matching problem is an extension of the classical dictionary matching problem where every string in the dictionary is interpreted as a circular string: after reading the last character of a string, we can move back…

Data Structures and Algorithms · Computer Science 2025-04-07 Nicola Cotumaccio

In this paper, we design a new succinct static dictionary with worst-case constant query time. A dictionary data structure stores a set of key-value pairs with distinct keys in $[U]$ and values in $[\sigma]$, such that given a query $x\in…

Data Structures and Algorithms · Computer Science 2025-03-28 Yang Hu , Jingxun Liang , Huacheng Yu , Junkai Zhang , Renfei Zhou

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

A Longest Common Extension (LCE) query on a text $T$ of length $N$ asks for the length of the longest common prefix of suffixes starting at given two positions. We show that the signature encoding $\mathcal{G}$ of size $w = O(\min(z \log N…

Data Structures and Algorithms · Computer Science 2016-06-28 Takaaki Nishimoto , Tomohiro I , Shunsuke Inenaga , Hideo Bannai , Masayuki Takeda

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

String kernels are typically used to compare genome-scale sequences whose length makes alignment impractical, yet their computation is based on data structures that are either space-inefficient, or incur large slowdowns. We show that a…

Data Structures and Algorithms · Computer Science 2015-02-24 Djamal Belazzougui , Fabio Cunial