Pattern matching with don't cares and few errors - Clifford, Raphaël; Efremenko, Klim; Porat, Ely; Rothschild, Amir (Journal of computer and system sciences, 2010)
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 a Θ ( 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 Θ ( n k 2 log 2 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 Θ ( n k polylog m ) time. Further, in each case the location of the mismatches at each alignment is also given at no extra cost.