We present solutions for the k-mismatch pattern matching problem with don't cares. Given a text t of length n and a pattern p of length m with don't care symbols and a bound k, our algorithms find all the places that the pattern matches the text with at most k mismatches. We first give an Θ (n(k + log m log k) log n) time randomised algorithm which finds the correct answer with high probability. We then present a new deterministic Θ `nk2 log2 m´ time solution that uses tools originally developed for group testing. Taking our derandomisation approach further we develop an approach based on k-selectors that runs in Θ (nk polylogm) time. Further, in each case the location of the mismatches at each alignment is also given at no extra cost.
ASJC Scopus subject areas
- Hardware and Architecture
- Control and Systems Engineering