Skip to main content
QUICK REVIEW

[论文解读] Small-space encoding LCE data structure with constant-time queries

Yuka Tanimura, Takaaki Nishimoto|arXiv (Cornell University)|Feb 24, 2017
Algorithms and Data Compression被引用 5
一句话总结

本文提出了一种用于最长公共扩展(LCE)问题的新编码数据结构,通过使用 O(zτ² + n/τ) 个字的存储空间,实现了 O(1) 的查询时间,其中 z 是 Lempel-Ziv 77 分解的大小,τ ≤ √n 是一个权衡参数。该结构空间效率高,预处理后无需访问原始字符串,且在高度重复的字符串和小字母表的情况下,超越了已知的时间-空间权衡下界。

ABSTRACT

The \emph{longest common extension} (\emph{LCE}) problem is to preprocess a given string $w$ of length $n$ so that the length of the longest common prefix between suffixes of $w$ that start at any two given positions is answered quickly. In this paper, we present a data structure of $O(z τ^2 + \frac{n}τ)$ words of space which answers LCE queries in $O(1)$ time and can be built in $O(n \log σ)$ time, where $1 \leq τ\leq \sqrt{n}$ is a parameter, $z$ is the size of the Lempel-Ziv 77 factorization of $w$ and $σ$ is the alphabet size. This is an \emph{encoding} data structure, i.e., it does not access the input string $w$ when answering queries and thus $w$ can be deleted after preprocessing. On top of this main result, we obtain further results using (variants of) our LCE data structure, which include the following: - For highly repetitive strings where the $zτ^2$ term is dominated by $\frac{n}τ$, we obtain a \emph{constant-time and sub-linear space} LCE query data structure. - Even when the input string is not well compressible via Lempel-Ziv 77 factorization, we still can obtain a \emph{constant-time and sub-linear space} LCE data structure for suitable $τ$ and for $σ\leq 2^{o(\log n)}$. - The time-space trade-off lower bounds for the LCE problem by Bille et al. [J. Discrete Algorithms, 25:42-50, 2014] and by Kosolobov [CoRR, abs/1611.02891, 2016] can be "surpassed" in some cases with our LCE data structure.

研究动机与目标

  • 设计一种空间高效的 LCE 数据结构,支持常数时间查询,同时使用次线性空间。
  • 通过构建编码数据结构,消除预处理后对原始字符串的存储需求。
  • 在特定场景下(如高度重复的字符串或小字母表)突破已知的 LCE 问题时间-空间权衡下界。
  • 为可通过 Lempel-Ziv 77 分解压缩的字符串实现最优的空间-时间权衡。
  • 探索在计算 Lempel-Ziv 分解时使用次线性工作空间的可行性。

提出的方法

  • 该数据结构基于 t-截断后缀树构建,其中后缀在长度 t 处被截断,并使用 Lempel-Ziv 77 分解对结构进行压缩。
  • 采用一种新颖的编码技术,避免存储原始字符串,仅依赖压缩表示和辅助数据结构。
  • 通过结合 LCP 数组上的范围最小值查询(RMQ)和后缀数组的压缩表示,实现 O(1) 时间的 LCE 查询。
  • 构造过程中使用参数 τ 来平衡空间与时间,空间复杂度受 O(zτ² + n/τ) 个字的限制。
  • 对于小字母表(σ ≤ 2^o(log n)),该方法利用打包内存字,对长度为 log n 的子串执行常数时间的位并行操作。
  • 该方法采用两阶段查询机制:短 LCE(≤ log n 位)通过位并行操作处理,长 LCE 通过截断后缀树上的压缩 RMQ 结构处理。

实验结果

研究问题

  • RQ1能否在不访问原始字符串的前提下,使用次线性空间构建常数时间的 LCE 数据结构?
  • RQ2在高度重复的字符串中,是否能在实际中突破已知的 LCE 问题时间-空间下界?
  • RQ3对于 Lempel-Ziv 分解大小 z 较小的字符串,能否实现 O(1) 查询时间与 O(n/τ) 空间的结合?
  • RQ4字母表大小 σ 是否会影响现有时间-空间权衡下界在 LCE 数据结构中的有效性?
  • RQ5能否在 O(n log σ) 时间内,使用次线性工作空间计算 Lempel-Ziv 77 分解?

主要发现

  • 所提出的结构使用 O(zτ² + n/τ) 个字的存储空间,支持 O(1) 时间的 LCE 查询,构造时间复杂度为 O(n log σ),工作空间为 O(zτ² + n/τ)。
  • 对于 zτ² 被 n/τ 主导的高度重复字符串,空间使用量变为次线性,达到 O(n/τ) 个字,同时保持 O(1) 查询时间。
  • 当 σ ≤ 2^o(log n) 时,该方法实现 T(n)S(n) = o(n log n),超越了 Bille 等人(2014)针对此类字符串的下界。
  • 当 σ ≤ 2^o(√log n) 时,时间与空间复杂度的乘积变为 o(n log n),超越了 Kosolobov 在此区间内的下界。
  • 该数据结构是一种编码结构:原始字符串 w 在预处理后可被删除,因为查询不依赖于 w 的访问。
  • 该方法表明,对于小字母表,对打包字中的位并行操作可实现在长度为 log n 的子串上的常数时间 LCE 查询,从而实现高效的查询组合。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。