Fully dynamic data structure for LCE queries in compressed space
Abstract
A Longest Common Extension (LCE) query on a text T of length N asks for the length of the longest common prefix of suffixes starting at given two positions. We show that the signature encoding G of size w = O((z N * M, N)) [Mehlhorn et al., Algorithmica 17(2):183-198, 1997] of T, which can be seen as a compressed representation of T, has a capability to support LCE queries in O( N + * M) time, where is the answer to the query, z is the size of the Lempel-Ziv77 (LZ77) factorization of T, and M ≥ 4N is an integer that can be handled in constant time under word RAM model. In compressed space, this is the fastest deterministic LCE data structure in many cases. Moreover, G can be enhanced to support efficient update operations: After processing G in O(w fA) time, we can insert/delete any (sub)string of length y into/from an arbitrary position of T in O((y+ N* M) fA) time, where fA = O( \ M w M, w w \). This yields the first fully dynamic LCE data structure. We also present efficient construction algorithms from various types of inputs: We can construct G in O(N fA) time from uncompressed string T; in O(n n N * M) time from grammar-compressed string T represented by a straight-line program of size n; and in O(z fA N * M) time from LZ77-compressed string T with z factors. On top of the above contributions, we show several applications of our data structures which improve previous best known results on grammar-compressed string processing.
Turn this paper into a lesson
ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.