Abstract

Given strings PP of length mm and TT of length nn over an alphabet of size σσ, the string matching with kk-mismatches problem is to find the positions of all the substrings in TT that are at Hamming distance at most kk from PP. If TT can be read only one character at the time the best known bounds are O(nklog⁡k)O(n\sqrt{k\log k}) and O(n+nk/wlog⁡k)O(n + n\sqrt{k/w}\log k) in the word-RAM model with word length ww. In the RAM models (including AC0AC^0 and word-RAM) it is possible to read up to $\floor{w / \log σ}$ characters in constant time if the characters of TT are encoded using $\ceil{\log σ}$ bits. The only solution for kk-mismatches in packed text works in $O((n \logσ/\log n)\ceil{m \log (k + \log n / \logσ) / w} + n^{\varepsilon})$ time, for any ε>0\varepsilon > 0. We present an algorithm that runs in time $O(\frac{n}{\floor{w/(m\logσ)}} (1 + \log \min(k,σ) \log m / \logσ))$ in the AC0AC^0 model if m=O(w/log⁡σ)m=O(w / \logσ) and TT is given packed. We also describe a simpler variant that runs in time $O(\frac{n}{\floor{w/(m\logσ)}}\log \min(m, \log w / \logσ))$ in the word-RAM model. The algorithms improve the existing bound for w=Ω(log⁡1+εn)w = Ω(\log^{1+ε}n), for any ε>0ε> 0. Based on the introduced technique, we present algorithms for several other approximate matching problems.

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.