中文

带通配符字符的最长公共扩展问题:权衡与应用

数据结构与算法 2025-05-23 v2

摘要

我们研究包含通配符的字符串的最长公共扩展 (LCE) 问题。通配符(也称为“不在意的字符”或“洞”)是匹配其他任何字符的特殊字符,类似于 Unix 命令中“?”或正则表达式引擎中的“.”。我们考虑以 GG(输入字符串中最大连续通配符组的数量)为参数的该问题。我们的主要贡献是构建一个简单的数据结构,构建时间为 O(n(G/t)logn)O(n (G/t) \log n),占用空间为 O(nG/t)O(nG/t),查询时间为 O(t)O(t),其中 t[1,G]t \in [1, G]。在 O(logn)O(\log n) 因子上,这在 Crochemore 等人 [JDA 2015] 的数据结构(具有 O(nG)O(nG) 预处理时间和空间,O(1)O(1) 查询时间)和基于“袋狗跳跃”技术 [Landau and Vishkin, STOC 1986] 的简单解决方案(具有 O(n)O(n) 预处理时间和空间,O(G)O(G) 查询时间)之间平滑插值。通过将该问题与布尔矩阵乘法建立联系,我们表明在 G=Ω(nϵ)G = \Omega(n^\epsilon) 时,基于组合数据结构的解在亚多项式因子内是最优的,前提是接受一个广泛认可的假设。在此基础上,我们开发了一个简单的确定性组合算法用于稀疏布尔矩阵乘法。我们进一步建立了一个条件下界,对非组合数据结构表明,在 GGtt 的广泛范围内,具有查询时间 tt 的数据结构的 O(nG/t4)O(nG/t^4) 预处理时间(或空间)在亚多项式因子内是最优的,前提是假设广泛接受的 3SUM\textsf{3SUM}(或 Set-Disjointness\textsf{Set-Disjointness})猜想。最后,我们表明该数据结构可用于获得近似模式匹配和带通配符字符串结构分析的高效算法。

关键词

引用

@article{arxiv.2408.03610,
  title  = {Longest Common Extensions with Wildcards: Trade-off and Applications},
  author = {Gabriel Bathie and Itai Boneh and Panagiotis Charalampopoulos and Jonas Ellert and Tatiana Starikovskaya},
  journal= {arXiv preprint arXiv:2408.03610},
  year   = {2025}
}

备注

Extended version of a work that was presented at ESA 2024. This version contains extra (conditional) lower bounds. Abstract abridged to meet arXiv requirements