Compressed data structures for dynamic sequences

21Citations
Citations of this article
11Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We consider the problem of storing a dynamic string S over an alphabet Σ = { 1,...,σ } in compressed form. Our representation supports insertions and deletions of symbols and answers three fundamental queries: access(i, S) returns the i-th symbol in S, ranka(i, S) counts how many times a symbol a occurs among the first i positions in S, and selecta(i, S) finds the position where a symbol a occurs for the i-th time. We present the first fully-dynamic data structure for arbitrarily large alphabets that achieves optimal query times for all three operations and supports updates with worst-case time guarantees. Ours is also the first fully-dynamic data structure that needs only nHk+o(n log σ) bits, where Hk is the k-th order entropy and n is the string length. Moreover our representation supports extraction of a substring S[i..i +ℓ] in optimal O(log n/ log log n + _/ logσ n) time.

Cite

CITATION STYLE

APA

Munro, J. I., & Nekrich, Y. (2015). Compressed data structures for dynamic sequences. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9294, pp. 891–902). Springer Verlag. https://doi.org/10.1007/978-3-662-48350-3_74

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free