English
Related papers

Related papers: On-line construction of position heaps

200 papers

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

This paper describes a new and purely functional implementation technique of binary heaps. A binary heap is a tree-based data structure that implements priority queue operations (insert, remove, minimum/maximum) and guarantees at worst…

Data Structures and Algorithms · Computer Science 2013-12-18 Vladimir Kostyukov

The word position automaton was introduced by Glushkov and McNaughton in the early 1960. This automaton is homogeneous and has (||\E||+1) states for a word expression of alphabetic width ||\E||. This kind of automata is extended to regular…

Formal Languages and Automata Theory · Computer Science 2015-02-24 Nadia Ouali Sebti , Djelloul Ziadi

We introduce a new family of priority-queue data structures: partition-based simple heaps. The structures consist of $O(\log n)$ doubly-linked lists; order is enforced among data in different lists, but the individual lists are unordered.…

Data Structures and Algorithms · Computer Science 2026-03-03 Gerth Stølting Brodal , John Iacono , Casper Moldrup Rysgaard , Sebastian Wild

We introduce a method for creating a special type of tree, called a tree position, from a weighted graph. Leaves of the tree correspond to vertices of the original graph, and the tree edges contain information which can be used to partition…

Combinatorics · Mathematics 2014-08-19 R. Sean Bowman , Douglas R. Heisterkamp , Jesse Johnson

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

The Fibonacci heap is a classic data structure that supports deletions in logarithmic amortized time and all other heap operations in O(1) amortized time. We explore the design space of this data structure. We propose a version with the…

Data Structures and Algorithms · Computer Science 2014-07-23 Haim Kaplan , Robert E. Tarjan , Uri Zwick

Alignments, i.e., position-wise comparisons of two or more strings or ordered lists are of utmost practical importance in computational biology and a host of other fields, including historical linguistics and emerging areas of research in…

Combinatorics · Mathematics 2018-10-19 Sarah J. Berkemer , Christian Höner zu Siederdissen , Peter F. Stadler

Suffix sort plays a critical role in various computational algorithms including genomics as well as in frequently used day to day software applications. The sorting algorithm becomes tricky when we have lot of repeated characters in the…

Data Structures and Algorithms · Computer Science 2022-10-05 Kunal Chowdhury

Datalog has become a popular implementation language for solving large-scale, real-world problems, including bug finders, network analysis tools, and disassemblers. These applications express complex behaviour with hundreds of relations and…

Programming Languages · Computer Science 2021-08-26 Xiaowen Hu , Joshua Karp , David Zhao , Abdul Zreika , Xi Wu , Bernhard Scholz

We propose a new linear-size data structure which provides a fast access to all palindromic substrings of a string or a set of strings. This structure inherits some ideas from the construction of both the suffix trie and suffix tree. Using…

Data Structures and Algorithms · Computer Science 2015-08-18 Mikhail Rubinchik , Arseny M. Shur

We describe a new way to construct finite geometric objects. For every k we obtain a symmetric configuration E(k-1) with k points on a line. In particular, we have a constructive existence proof for such configurations. The method is very…

Combinatorics · Mathematics 2012-11-09 Christoph Hering , Andreas Krebs , Thomas Edgar

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

There have been multiple attempts to resolve various inflection matching problems in information retrieval. Stemming is a common approach to this end. Among many techniques for stemming, statistical stemming has been shown to be effective…

Information Retrieval · Computer Science 2016-06-22 Javid Dadashkarimi , Hossein Nasr Esfahani , Heshaam Faili , Azadeh Shakery

We give a priority queue that achieves the same amortized bounds as Fibonacci heaps. Namely, find-min requires O(1) worst-case time, insert, meld and decrease-key require O(1) amortized time, and delete-min requires $O(\log n)$ amortized…

Data Structures and Algorithms · Computer Science 2010-02-11 Amr Elmasry

We consider a recently introduced class of network construction problems where edges of a transportation network need to be constructed by a server (construction crew). The server has a constant construction speed which is much lower than…

Artificial Intelligence · Computer Science 2020-07-08 Igor Averbakh , Jordi Pereira

We present an improved wavelet tree construction algorithm and discuss its applications to a number of rank/select problems for integer keys and strings. Given a string of length n over an alphabet of size $\sigma\leq n$, our method builds…

Data Structures and Algorithms · Computer Science 2015-05-18 Maxim Babenko , Paweł Gawrychowski , Tomasz Kociumaka , Tatiana Starikovskaya

A suffix tree is a data structure used mainly for pattern matching. It is known that the space complexity of simple suffix trees is quadratic in the length of the string. By a slight modification of the simple suffix trees one gets the…

Combinatorics · Mathematics 2016-11-15 Bálint Vásárhelyi

We show how to build several data structures of central importance to string processing, taking as input the Burrows-Wheeler transform (BWT) and using small extra working space. Let $n$ be the text length and $\sigma$ be the alphabet size.…

Data Structures and Algorithms · Computer Science 2019-08-14 Nicola Prezza , Giovanna Rosone

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