中文

最优最重诱导祖先问题

数据结构与算法 2023-02-06 v1

摘要

我们重新审视由 Gagie、Gawrychowski 和 Nekrich [CCCG 2013] 引入并在字符串算法中有诸多应用的“最重诱导祖先”(HIA)问题。设 T1T_1T2T_2 为两棵有根树,其节点权重在所有根到叶路径上递增,叶子上带标签,且同一树中任意两叶子标签不同。节点对 (u,v)T1×T2(u, v)\in T_1 \times T_2 被称为“诱导”的,当且仅当存在被 uuvv 的叶后代共同拥有的标签。在 HIA 查询中,给定节点 xT1x \in T_1yT2y \in T_2,目标是找到总权重最大的诱导节点对 (u,v)(u, v),使得 uuxx 的祖先且 vvyy 的祖先。令 nn 为两树大小的上界。已知不存在大小为 O~(n)\tilde{\mathcal{O}}(n) 且能在 o(logn/loglogn)o(\log n / \log \log n) 时间内回答 HIA 查询的数据结构 [Charalampopoulos, Gawrychowski, Pokorski; ICALP 2020]。该(无条件)下界与迄今已知最快的 O~(n)\tilde{\mathcal{O}}(n) 大小 HIA 问题数据结构 [Abedin, Hooshmand, Ganguly, Thankachan; Algorithmica 2022] 的查询时间相差一个 polyloglogn\operatorname{polyloglog} n 因子。本文中,我们通过给出一个可在 O~(n)\tilde{\mathcal{O}}(n) 时间内构建、并以 O(logn/loglogn)\mathcal{O}(\log n/\log\log n) 时间回答 HIA 查询的数据结构,解决了近线性空间情形下 HIA 问题的查询时间复杂度。作为直接推论,我们得到一个 O~(n)\tilde{\mathcal{O}}(n) 大小的数据结构,可在该空间情形下以最优时间维护静态串与动态串(长度均不超过 nn)的 LCS。我们方法的主要要素是分数级联与对深度为 O(logn/loglogn)\mathcal{O}(\log n/ \log\log n) 的树分解的利用。

关键词

引用

@article{arxiv.2302.01373,
  title  = {Optimal Heaviest Induced Ancestors},
  author = {Panagiotis Charalampopoulos and Bartłomiej Dudek and Paweł Gawrychowski and Karol Pokorski},
  journal= {arXiv preprint arXiv:2302.01373},
  year   = {2023}
}