当前位置: X-MOL 学术arXiv.cs.DS › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Circular Pattern Matching with $k$ Mismatches
arXiv - CS - Data Structures and Algorithms Pub Date : 2019-07-03 , DOI: arxiv-1907.01815
Panagiotis Charalampopoulos, Tomasz Kociumaka, Solon P. Pissis, Jakub Radoszewski, Wojciech Rytter, Juliusz Straszy\'nski, Tomasz Wale\'n, Wiktor Zuba

The $k$-mismatch problem consists in computing the Hamming distance between a pattern $P$ of length $m$ and every length-$m$ substring of a text $T$ of length $n$, if this distance is no more than $k$. In many real-world applications, any cyclic rotation of $P$ is a relevant pattern, and thus one is interested in computing the minimal distance of every length-$m$ substring of $T$ and any cyclic rotation of $P$. This is the circular pattern matching with $k$ mismatches ($k$-CPM) problem. A multitude of papers have been devoted to solving this problem but, to the best of our knowledge, only average-case upper bounds are known. In this paper, we present the first non-trivial worst-case upper bounds for the $k$-CPM problem. Specifically, we show an $O(nk)$-time algorithm and an $O(n+\frac{n}{m}\,k^4)$-time algorithm. The latter algorithm applies in an extended way a technique that was very recently developed for the $k$-mismatch problem [Bringmann et al., SODA 2019]. A preliminary version of this work appeared at FCT 2019. In this version we improve the time complexity of the main algorithm from $O(n+\frac{n}{m}\,k^5)$ to $O(n+\frac{n}{m}\,k^4)$.

中文翻译:

$k$ 不匹配的圆形模式匹配

$k$-mismatch 问题在于计算长度为 $m$ 的模式 $P$ 与长度为 $n$ 的文本 $T$ 的每个长度为 $m$ 的子串之间的汉明距离,如果该距离不再比 $k$。在许多实际应用中,$P$ 的任何循环旋转都是一种相关模式,因此人们有兴趣计算 $T$ 的每个长度为 $m$ 的子串和 $P$ 的任何循环旋转的最小距离。这是带有 $k$ 不匹配 ($k$-CPM) 问题的循环模式匹配。许多论文都致力于解决这个问题,但据我们所知,只有平均情况的上限是已知的。在本文中,我们提出了 $k$-CPM 问题的第一个非平凡的最坏情况上限。具体来说,我们展示了 $O(nk)$-time 算法和 $O(n+\frac{n}{m}\,k^4)$-time 算法。后一种算法以扩展方式应用了最近为 $k$-mismatch 问题开发的技术 [Bringmann et al., SODA 2019]。这项工作的初步版本出现在 FCT 2019。在这个版本中,我们将主要算法的时间复杂度从 $O(n+\frac{n}{m}\,k^5)$ 提高到 $O(n+\frac {n}{m}\,k^4)$。
更新日期:2020-01-14
down
wechat
bug