paper

Approximate pattern matching with k-mismatches in packed text

arXiv:1211.5433

Abstract

Given strings of length and of length over an alphabet of size , the string matching with -mismatches problem is to find the positions of all the substrings in that are at Hamming distance at most from . If can be read only one character at the time the best known bounds are and in the word-RAM model with word length . In the RAM models (including and word-RAM) it is possible to read up to $\floor{w / \log σ}$ characters in constant time if the characters of are encoded using $\ceil{\log σ}$ bits. The only solution for -mismatches in packed text works in $O((n \logσ/\log n)\ceil{m \log (k + \log n / \logσ) / w} + n^{\varepsilon})$ time, for any . We present an algorithm that runs in time $O(\frac{n}{\floor{w/(m\logσ)}} (1 + \log \min(k,σ) \log m / \logσ))$ in the model if and 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 , for any . Based on the introduced technique, we present algorithms for several other approximate matching problems.

This paper is an extended version of the article that appeared in Information Processing Letters 113(19-21):693-697 (2013), http://dx.doi.org/10.1016/j.ipl.2013.07.002