English
Related papers

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

200 papers

We show how to build an alphabetic minimax tree for a sequence (W = w_1, >..., w_n) of real weights in (O (n d \log \log n)) time, where $d$ is the number of distinct integers (\lceil w_i \rceil). We apply this algorithm to building an…

Information Theory · Computer Science 2008-10-29 Travis Gagie

The Suffix Array is a classic text index enabling on-line pattern matching queries via simple binary search. The main drawback of the Suffix Array is that it takes linear space in the text's length, even if the text itself is extremely…

Data Structures and Algorithms · Computer Science 2025-03-19 Davide Cenzato , Lore Depuydt , Travis Gagie , Sung-Hwan Kim , Giovanni Manzini , Francisco Olivares , Nicola Prezza

We present several results about position heaps, a relatively new alternative to suffix trees and suffix arrays. First, we show that, if we limit the maximum length of patterns to be sought, then we can also limit the height of the heap and…

Data Structures and Algorithms · Computer Science 2013-01-15 Travis Gagie , Wing-Kai Hon , Tsung-Han Ku

The dictionary matching problem is to locate occurrences of any pattern among a set of patterns in a given text. Massive data sets abound and at the same time, there are many settings in which working space is extremely limited. We…

Data Structures and Algorithms · Computer Science 2013-01-29 Shoshana Marcus Dina Sokol

Tasks that model the relation between pairs of tokens in a string are a vital part of understanding natural language. Such tasks, in general, require exhaustive pair-wise comparisons of tokens, thus having a quadratic runtime complexity in…

Computation and Language · Computer Science 2023-12-13 Tianyu Liu , Afra Amini , Mrinmaya Sachan , Ryan Cotterell

We study the problem of learning properties of nodes in tree structures. Those properties are specified by logical formulas, such as formulas from first-order or monadic second-order logic. We think of the tree as a database encoding a…

Logic in Computer Science · Computer Science 2019-09-25 Emilie Grienenberger , Martin Ritzert

Given the query string of length $m$, we explore a parallel query in a static suffix tree based data structure for $p \ll n$, where $p$ is the number of processors and $n$ is the length of the text. We present three results on CREW PRAM.…

Data Structures and Algorithms · Computer Science 2015-09-30 Matevž Jekovec , Andrej Brodnik

We propose a simple linear-time on-line algorithm for constructing a position heap for a string [Ehrenfeucht et al, 2011]. Our definition of position heap differs slightly from the one proposed in [Ehrenfeucht et al, 2011] in that it…

Data Structures and Algorithms · Computer Science 2015-03-19 Gregory Kucherov

The binary indexed tree, or Fenwick tree, is a data structure that can efficiently update values and calculate prefix sums in an array. It allows both of these operations to be performed in $O(\log_2 N)$ time. Here we present a novel data…

Data Structures and Algorithms · Computer Science 2024-03-08 Brent Harrison , Jason Necaise , Andrew Projansky , James D. Whitfield

We consider the problem of finding repetitive structures and inherent patterns in a given string $\s{s}$ of length $n$ over a finite totally ordered alphabet. A border $\s{u}$ of a string $\s{s}$ is both a prefix and a suffix of $\s{s}$…

Data Structures and Algorithms · Computer Science 2015-06-24 Ali Alatabbi , Jacqueline W. Daykin , M. Sohel Rahman

Detecting all the strings that occur in a text more frequently or less frequently than expected according to an IID or a Markov model is a basic problem in string mining, yet current algorithms are based on data structures that are either…

Data Structures and Algorithms · Computer Science 2015-08-13 Djamal Belazzougui , Fabio Cunial

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

A classic data structure problem is to preprocess a string T of length $n$ so that, given a query $q$, we can quickly find all substrings of T with Hamming distance at most $k$ from the query string. Variants of this problem have seen…

Data Structures and Algorithms · Computer Science 2026-04-03 Jackson Bibbens , Levi Borevitz , Samuel McCauley

We introduce data structures answering queries concerning the occurrences of patterns from a given dictionary $\mathcal{D}$ in fragments of a given string $T$ of length $n$. The dictionary is internal in the sense that each pattern in…

Data Structures and Algorithms · Computer Science 2019-09-26 Panagiotis Charalampopoulos , Tomasz Kociumaka , Manal Mohamed , Jakub Radoszewski , Wojciech Rytter , Tomasz Waleń

Background. The supertree problem, i.e., the task of finding a common refinement of a set of rooted trees is an important topic in mathematical phylogenetics. The special case of a common leaf set $L$ is known to be solvable in linear time.…

Data Structures and Algorithms · Computer Science 2021-09-27 David Schaller , Marc Hellmuth , Peter F. Stadler

Let a text $T[1..n]$ be the only string generated by a context-free grammar with $g$ (terminal and nonterminal) symbols, and of size $G$ (measured as the sum of the lengths of the right-hand sides of the rules). Such a grammar, called a…

Data Structures and Algorithms · Computer Science 2020-04-03 Francisco Claude , Gonzalo Navarro , Alejandro Pacheco

Suffix trees have emerged to be very fast for pattern searching yielding O (m) time, where m is the pattern size. Unfortunately their high memory requirements make it impractical to work with huge amounts of data. We present a memory…

Data Structures and Algorithms · Computer Science 2017-03-08 Freeson Kaniwa , Venu Madhav Kuthadi , Otlhapile Dinakenyane , Heiko Schroeder

Linear temporal logic (LTL) is a specification language for finite sequences (called traces) widely used in program verification, motion planning in robotics, process mining, and many other areas. We consider the problem of learning LTL…

Artificial Intelligence · Computer Science 2026-01-22 Ritam Raha , Rajarshi Roy , Nathanaël Fijalkow , Daniel Neider

The suffix tree is a data structure for indexing strings. It is used in a variety of applications such as bioinformatics, time series analysis, clustering, text editing and data compression. However, when the string and the resulting suffix…

Databases · Computer Science 2011-10-03 Essam Mansour , Amin Allam , Spiros Skiadopoulos , Panos Kalnis

We suggest a new non-recursive algorithm for constructing a binary search tree given an array of numbers. The algorithm has $O(N)$ time and $O(1)$ memory complexity if the given array of $N$ numbers is sorted. The resulting tree is of…

Data Structures and Algorithms · Computer Science 2022-07-20 Pavel S. Ruzankin
‹ Prev 1 3 4 5 6 7 10 Next ›