King's College London

Research portal

Faster algorithms for 1-mappability of a sequence

Research output: Contribution to journalArticle

Original languageEnglish
JournalTheoretical Computer Science
Early online date23 May 2019
DOIs
Publication statusE-pub ahead of print - 23 May 2019

King's Authors

Abstract

In the k-mappability problem, we are given a string x of length n and integers m and k, and we are asked to count, for each length-m factor y of x, the number of other factors of length m of x that are at Hamming distance at most k from y. We focus here on the version of the problem where k=1. There exists an algorithm to solve this problem for k=1 requiring time O(mnlog⁡n/log⁡log⁡n) using space O(n). Here we present two new algorithms that require worst-case time O(mn) and O(nlog⁡nlog⁡log⁡n), respectively, and space O(n), thus greatly improving the previous result. Moreover, we present another algorithm that requires average-case time and space O(n) for integer alphabets of size σ if m=Ω(log σ⁡n). Notably, we show that this algorithm is generalizable for arbitrary k, requiring average-case time O(kn) and space O(n) if m=Ω(klog σ⁡n), assuming that the letters are independent and uniformly distributed random variables. Finally, we provide an experimental evaluation of our average-case algorithm demonstrating its competitiveness to the state-of-the-art implementation.

View graph of relations

© 2018 King's College London | Strand | London WC2R 2LS | England | United Kingdom | Tel +44 (0)20 7836 5454