中文

字典树的参数化位置堆

数据结构与算法 2019-03-18 v1

摘要

Σ\SigmaΠ\Pi 为不相交字母表,大小分别为 σ\sigmaπ\pi。长度相等且定义在 ΣΠ\Sigma \cup \Pi 上的两个字符串被称为参数化匹配(p-match),当且仅当存在双射 f:ΣΠΣΠf:\Sigma \cup \Pi \rightarrow \Sigma \cup \Pi 使得(1)ffΣ\Sigma 上为恒等映射,且(2)ff 将一个字符串的字符映射到另一个字符串的字符,使两字符串变得相同。我们考虑在(反向)字典树 T\mathcal{T} 和字符串模式 PP 上的 p-matching 问题,要求报告每条与 PP 参数化匹配的路径。设 NN 为给定字典树 T\mathcal{T} 的大小。本文提出 T\mathcal{T} 的参数化位置堆,其占用 O(N)O(N) 空间,并支持在 O(mlog(σ+π)+mπ+pocc))O(m \log (\sigma + \pi) + m \pi + \mathit{pocc})) 时间内进行 p-matching 查询,其中 mm 为查询模式 PP 的长度,pocc\mathit{pocc}T\mathcal{T} 中待报告路径的数量。我们还给出了一个算法,可在 O(N(σ+π))O(N (\sigma + \pi)) 时间和工作空间内为给定字典树 T\mathcal{T} 构造参数化位置堆。

关键词

引用

@article{arxiv.1903.06289,
  title  = {The Parameterized Position Heap of a Trie},
  author = {Noriki Fujisato and Yuto Nakashima and Shunsuke Inenaga and Hideo Bannai and Masayuki Takeda},
  journal= {arXiv preprint arXiv:1903.06289},
  year   = {2019}
}