Cha*_*adi 2 string algorithm hamming-distance
我有一系列DNA序列,如:
AA
TA
AC
CC
我搜索一个更快的方法来计算所有序列对之间的汉明距离(可能通过排序......),然后是天真的方法(O(N ^ 2))
For motif1 in array
For motif2 in array
calculate Hamming_Distance(motif1 , motif2)
end
end
Run Code Online (Sandbox Code Playgroud)
我需要具有汉明距离= 1的对的序列
如果您的n >> k,那么您可以尝试以下
您的原始复杂度为O(n n k),其中k是序列的长度(因为汉明距离比较需要k步).让我们尝试改进.
就这样,你已经更换为O(n ñ K)为O(N ķ K),这应该是有利的.如果n >> K.
对于k >> n,你可能并不真正关心n ^ 2部分,所以使用琐碎的算法.
对于k附近的k,您可以尝试我在评论中建议的内容