English
Related papers

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

200 papers

Sorting is a fundamental algorithmic pre-processing technique which often allows to represent data more compactly and, at the same time, speeds up search queries on it. In this paper, we focus on the well-studied problem of sorting and…

Data Structures and Algorithms · Computer Science 2023-04-24 Sung-Hwan Kim , Francisco Olivares , Nicola Prezza

Depth first search (DFS) tree is one of the most well-known data structures for designing efficient graph algorithms. Given an undirected graph $G=(V,E)$ with $n$ vertices and $m$ edges, the textbook algorithm takes $O(n+m)$ time to…

Data Structures and Algorithms · Computer Science 2018-02-21 Lijie Chen , Ran Duan , Ruosong Wang , Hanrui Zhang , Tianyi Zhang

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

The Burrows-Wheeler transform (BWT) is a permutation whose applications are prevalent in data compression and text indexing. The bijective BWT (BBWT) is a bijective variant of it. Although it is known that the BWT can be constructed in…

Data Structures and Algorithms · Computer Science 2021-04-23 Hideo Bannai , Juha Kärkkäinen , Dominik Köppl , Marcin Picatkowski

In this paper we present a really simple linear-time algorithm constructing a context-free grammar of size O(g log (N/g)) for the input string, where N is the size of the input string and g the size of the optimal grammar generating this…

Data Structures and Algorithms · Computer Science 2014-03-19 Artur Jeż

Directed acyclic graphs (DAGs) are a class of graphs commonly used in practice, with examples that include electronic circuits, Bayesian networks, and neural architectures. While many effective encoders exist for DAGs, it remains…

Machine Learning · Computer Science 2025-05-30 Michael Sun , Orion Foo , Gang Liu , Wojciech Matusik , Jie Chen

The palindromic tree (a.k.a. eertree) for a string $S$ of length $n$ is a tree-like data structure that represents the set of all distinct palindromic substrings of $S$, using $O(n)$ space [Rubinchik and Shur, 2018]. It is known that, when…

Data Structures and Algorithms · Computer Science 2020-11-12 Takuya Mieno , Kiichi Watanabe , Yuto Nakashima , Shunsuke Inenaga , Hideo Bannai , Masayuki Takeda

Finding the origin of short phrases propagating through the web has been formalized by Leskovec et al. [ACM SIGKDD 2009] as DAG Partitioning: given an arc-weighted directed acyclic graph on $n$ vertices and $m$ arcs, delete arcs with total…

Data Structures and Algorithms · Computer Science 2017-02-02 René van Bevern , Robert Bredereck , Morgan Chopin , Sepp Hartung , Falk Hüffner , André Nichterlein , Ondřej Suchý

The problem of constructing optimal factoring automata arises in the context of unification factoring for the efficient execution of logic programs. Given an ordered set of $n$ strings of length $m$, the problem is to construct a trie-like…

Data Structures and Algorithms · Computer Science 2024-04-04 Thomas Erlebach , Kleitos Papadopoulos

We introduce the first index that can be built in $o(n)$ time for a text of length $n$, and can also be queried in $o(q)$ time for a pattern of length $q$. On an alphabet of size $\sigma$, our index uses $O(n\sqrt{\log n\log\sigma})$ bits,…

Data Structures and Algorithms · Computer Science 2019-07-16 J. Ian Munro , Gonzalo Navarro , Yakov Nekrich

The wavelet tree has become a very useful data structure to efficiently represent and query large volumes of data in many different domains, from bioinformatics to geographic information systems. One problem with wavelet trees is their…

Data Structures and Algorithms · Computer Science 2016-10-20 José Fuentes-Sepúlveda , Erick Elejalde , Leo Ferres , Diego Seco

In this paper we propose a variant of the induced suffix sorting algorithm by Nong (TOIS, 2013) that computes simultaneously the Lyndon array and the suffix array of a text in $O(n)$ time using $\sigma + O(1)$ words of working space, where…

Data Structures and Algorithms · Computer Science 2020-09-10 Felipe A. Louza , Sabrina Mantaci , Giovanni Manzini , Marinella Sciortino , Guilherme P. Telles

Dynamic Time Warping (DTW) is a widely used similarity measure for comparing strings that encode time series data, with applications to areas including bioinformatics, signature verification, and speech recognition. The standard…

Data Structures and Algorithms · Computer Science 2022-07-05 Zoe Xi , William Kuszmaul

In this paper we describe an algorithm that embeds a graph metric $(V,d_G)$ on an undirected weighted graph $G=(V,E)$ into a distribution of tree metrics $(T,D_T)$ such that for every pair $u,v\in V$, $d_G(u,v)\leq d_T(u,v)$ and…

Data Structures and Algorithms · Computer Science 2017-05-29 Guy E. Blelloch , Yan Gu , Yihan Sun

We propose new succinct representations of ordinal trees, which have been studied extensively. It is known that any $n$-node static tree can be represented in $2n + o(n)$ bits and a number of operations on the tree can be supported in…

Data Structures and Algorithms · Computer Science 2010-09-27 Gonzalo Navarro , Kunihiko Sadakane

In this paper we present a lexicon-based approach to the problem of morphological processing. Full-form words, lemmas and grammatical tags are interconnected in a DAWG. Thus, the process of analysis/synthesis is reduced to a search in the…

Computation and Language · Computer Science 2007-05-23 Kyriakos N. Sgarbas , Nikos D. Fakotakis , George K. Kokkinakis

Depth first search (DFS) tree is a fundamental data structure for solving graph problems. The classical algorithm [SiComp74] for building a DFS tree requires $O(m+n)$ time for a given graph $G$ having $n$ vertices and $m$ edges. Recently,…

Data Structures and Algorithms · Computer Science 2017-05-11 Shahbaz Khan

We present a novel perspective and algorithm for learning directed acyclic graphs (DAGs) from data generated by a linear structural equation model (SEM). First, we show that a linear SEM can be viewed as a linear transform that, in prior…

Machine Learning · Computer Science 2024-06-21 Panagiotis Misiakos , Chris Wendler , Markus Püschel

Given $n$ points in the plane, we propose algorithms to compile connected crossing-free geometric graphs into directed acyclic graphs (DAGs). The DAGs allow efficient counting, enumeration, random sampling, and optimization. Our algorithms…

Computational Geometry · Computer Science 2020-01-27 Yu Nakahata , Takashi Horiyama , Shin-ichi Minato , Katsuhisa Yamanaka

We present the first linear time algorithm to construct the $2n$-bit version of the Lyndon array for a string of length $n$ using only $o(n)$ bits of working space. A simpler variant of this algorithm computes the plain ($n\lg n$-bit)…

Data Structures and Algorithms · Computer Science 2019-12-11 Philip Bille , Jonas Ellert , Johannes Fischer , Inge Li Gørtz , Florian Kurpicz , Ian Munro , Eva Rotenberg