English
Related papers

Related papers: Zip-Tries: Simple Dynamic Data Structures for Stri…

200 papers

The string indexing problem is a fundamental computational problem with numerous applications, including information retrieval and bioinformatics. It aims to efficiently solve the pattern matching problem: given a text T of length n for…

Data Structures and Algorithms · Computer Science 2025-09-03 Waseem Akram , Takuya Mieno

The order preserving pattern matching (OPPM) problem is, given a pattern string $p$ and a text string $t$, find all substrings of $t$ which have the same relative orders as $p$. In this paper, we consider two variants of the OPPM problem…

Data Structures and Algorithms · Computer Science 2017-07-26 Temma Nakamura , Shunsuke Inenaga , Hideo Bannai , Masayuki Takeda

We describe a data structure that supports access, rank and select queries, as well as symbol insertions and deletions, on a string $S[1,n]$ over alphabet $[1..\sigma]$ in time $O(\lg n/\lg\lg n)$, which is optimal even on binary sequences…

Data Structures and Algorithms · Computer Science 2013-02-04 Gonzalo Navarro , Yakov Nekrich

Our aim is to develop dynamic data structures that support $k$-nearest neighbors ($k$-NN) queries for a set of $n$ point sites in the plane in $O(f(n) + k)$ time, where $f(n)$ is some polylogarithmic function of $n$. The key component is a…

Computational Geometry · Computer Science 2022-12-02 Sarita de Berg , Frank Staals

High-performance multi-core software typically uses concurrent data structures. Tests for such data structures have significantly smaller state spaces than the entire software, making it feasible to model check them. However, dynamic memory…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-05-19 Freark I. van der Berg

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

Temporal graphs represent interactions between entities over time. Deciding whether entities can reach each other through temporal paths is useful for various applications such as in communication networks and epidemiology. Previous works…

Data Structures and Algorithms · Computer Science 2023-08-24 Luiz Fernando Afra Brito , Marcelo Keese Albertini , Bruno Augusto Nassif Travençolo , Gonzalo Navarro

The widespread use of GPS-enabled devices generates voluminous and continuous amounts of traffic data but analyzing such data for interpretable and actionable insights poses challenges. A hierarchical clustering of the trips has many uses…

Databases · Computer Science 2018-10-15 Chia-Tung Kuo , Ian Davidson

We present parallel algorithms for exact and approximate pattern matching with suffix arrays, using a CREW-PRAM with $p$ processors. Given a static text of length $n$, we first show how to compute the suffix array interval of a given…

Data Structures and Algorithms · Computer Science 2016-06-09 Johannes Fischer , Dominik Köppl , Florian Kurpicz

Given strings $P$ of length $m$ and $T$ of length $n$ over an alphabet of size $\sigma$, the string matching with $k$-mismatches problem is to find the positions of all the substrings in $T$ that are at Hamming distance at most $k$ from…

Data Structures and Algorithms · Computer Science 2013-08-01 Emanuele Giaquinta , Szymon Grabowski , Kimmo Fredriksson

Real-world data often comes in compressed form. Analyzing compressed data directly (without decompressing it) can save space and time by orders of magnitude. In this work, we focus on fundamental sequence comparison problems and try to…

Data Structures and Algorithms · Computer Science 2021-12-14 Arun Ganesh , Tomasz Kociumaka , Andrea Lincoln , Barna Saha

Traditional Von Neumann computing is falling apart in the era of exploding data volumes as the overhead of data transfer becomes forbidding. Instead, it is more energy-efficient to fuse compute capability with memory where the data reside.…

We start by summarizing the recently proposed implementation of the first non-blocking concurrent interpolation search tree (C-IST) data structure. We then analyze the individual operations of the C-IST, and show that they are correct and…

Data Structures and Algorithms · Computer Science 2020-01-03 Aleksandar Prokopec , Trevor Brown , Dan Alistarh

Error Tree is a novel tree structure that is mainly oriented to solve the approximate pattern matching problems, Hamming and edit distances, as well as the wildcards matching problem. The input is a text of length $n$ over a fixed alphabet…

Data Structures and Algorithms · Computer Science 2020-08-25 Anas Al-Okaily

In this paper, we revisit the question of how the dynamic optimality of search trees should be defined in external memory. A defining characteristic of external-memory data structures is that there is a stark asymmetry between queries and…

Data Structures and Algorithms · Computer Science 2022-04-22 Michael A. Bender , Martín Farach-Colton , William Kuszmaul

A common problem appearing across the field of data science is $k$-NN ($k$-nearest neighbours), particularly within the context of Geographic Information Systems. In this article, we present a novel data structure, the GeoTree, which holds…

Data Structures and Algorithms · Computer Science 2020-08-06 Robert Miller , Phil Maguire

Navarro and Sadakane [TALG 2014] gave a dynamic succinct data structure for storing an ordinal tree. The structure supports tree queries in either $O(\log n/\log\log n)$ or $O(\log n)$ time, and insertion or deletion of a single node in…

Data Structures and Algorithms · Computer Science 2018-05-30 Dekel Tsur

Described are two algorithms to find long approximate palindromes in a string, for example a DNA sequence. A simple algorithm requires O(n)-space and almost always runs in $O(k.n)$-time where n is the length of the string and k is the…

Data Structures and Algorithms · Computer Science 2007-05-23 L. Allison

The longest common substring problem consists in finding a longest string that appears as a (contiguous) substring of two input strings. We consider the dynamic variant of this problem, in which we are to maintain two dynamic strings $S$…

Data Structures and Algorithms · Computer Science 2026-04-09 Panagiotis Charalampopoulos , Paweł Gawrychowski , Karol Pokorski

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