Skip to main content
QUICK REVIEW

[论文解读] Right-to-left online construction of parameterized position heaps

Noriki Fujisato, Yuto Nakashima|arXiv (Cornell University)|Aug 3, 2018
Algorithms and Data Compression被引用 4
一句话总结

本文提出了一种参数化位置堆(RL p-position heaps)的从右到左在线构建算法,实现了对参数化字符串的高效索引与模式匹配。该方法以 O(n log(σ+π)) 时间复杂度与 O(n) 空间复杂度构建数据结构,支持参数化模式匹配查询的时间复杂度为 O(m log(σ+π) + mπ + pocc),其效率与先前的从左到右方法相当,同时支持反向处理工作流。

ABSTRACT

Two strings of equal length are said to parameterized match if there is a bijection that maps the characters of one string to those of the other string, so that two strings become identical. The parameterized pattern matching problem is, given two strings $T$ and $P$, to find the occurrences of substrings in $T$ that parameterized match $P$. Diptarama et al. [Position Heaps for Parameterized Strings, CPM 2017] proposed an indexing data structure called parameterized position heaps, and gave a left-to-right online construction algorithm. In this paper, we present a right-to-left online construction algorithm for parameterized position heaps. For a text string $T$ of length $n$ over two kinds of alphabets $Σ$ and $Π$ of respective size $σ$ and $π$, our construction algorithm runs in $O(n \log(σ+ π))$ time with $O(n)$ space. Our right-to-left parameterized position heaps support pattern matching queries in $O(m \log (σ+ π) + m π+ \mathit{pocc}))$ time, where $m$ is the length of a query pattern $P$ and $\mathit{pocc}$ is the number of occurrences to report. Our construction and pattern matching algorithms are as efficient as Diptarama et al.'s algorithms.

研究动机与目标

  • 开发一种参数化位置堆的从右到左在线构建算法,以补充现有的从左到右方法。
  • 在保持与先前方法相同的时间与空间复杂度的前提下,实现从文本末尾开始的增量构建。
  • 通过构建结构中的最大可达指针,支持高效的参数化模式匹配查询。
  • 将位置堆数据结构的适用范围扩展至包含两种不同字母表(标准字母表与参数化字母表)的参数化字符串匹配。

提出的方法

  • 将 Ehrenfeucht 等人针对标准位置堆的从右到左构建方法,通过使用反转后缀链接,推广至参数化设置。
  • 采用类似 Weiner 的算法,通过按起始索引递减顺序处理后缀,逐步构建 RL p-position heap。
  • 利用前向后缀链接(反转后的后缀链接)在构建过程中高效计算最大可达指针。
  • 为反转后缀链接设计标签方案,以保持结构正确性,并支持对边的对数时间查找。
  • 在最终结构中增加最大可达指针,以支持高效的模式匹配查询。
  • 采用后缀链接遍历策略,确保总节点访问次数为 O(n),每次访问的边查找时间复杂度为 O(log(σ+π))。

实验结果

研究问题

  • RQ1能否设计一种从右到左在线构建算法,用于参数化位置堆,使其效率与现有从左到右方法相当?
  • RQ2在反向顺序构建参数化位置堆时,需要何种标签与链接策略,以保持正确性与效率?
  • RQ3是否可以在从右到左构建过程中,增量维护最大可达指针结构,以支持快速参数化模式匹配?
  • RQ4能否在参数化字符串上实现 RL p-position heap 的 O(n log(σ+π)) 构建时间与 O(n) 空间复杂度?
  • RQ5所构建的数据结构是否能够支持与现有解决方案相当的参数化模式匹配查询时间?

主要发现

  • 所提出的从右到左构建算法在长度为 n 的文本字符串上,运行时间复杂度为 O(n log(σ+π)),空间复杂度为 O(n),其中 σ 与 π 分别为两种字母表的大小。
  • 该构建过程与 Diptarama 等人提出的从左到右算法保持相同的时间复杂度,确保了效率的对等性。
  • 所构建的 RL p-position heap 支持参数化模式匹配查询,时间复杂度为 O(m log(σ+π) + mπ + pocc),其中 m 为模式长度,pocc 为报告的匹配次数。
  • 通过使用前向后缀链接与反转后缀链接的标签方案,实现了高效的增量构建。
  • 最大可达指针的计算被整合到构建过程中,确保了正确性与效率,总时间复杂度为 O(n log(σ+π))。
  • 该方法可扩展至多个参数化字符串的字典树索引,如未来工作中所建议。

更好的研究,从现在开始

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

无需绑定信用卡

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