让U
小字母0, 1
或A, C, G, T
,k <= n
。
我想找到它们之间的最小汉明距离
u = (u_1,...,u_k)
以及v = (v_1,...,v_n)
长度为k
的连续子序列O(n log n)
及时$ID
。
有可能吗?
感谢您的帮助!
答案 0 :(得分:1)
对于字母{1, -1}
,乘以多项式
(u_k + u_{k-1} x + u_{k-2} x^2 + ... + u_1 x^{k-1})
和
(v_1 + v_2 x + v_3 x^2 + ... + v_n x^{n-1}).
产品中x^i
的系数是u_1 ... u_k
和v_{i-k+2} ... v_{i+1}
之间汉明距离的简单仿射函数。
我们可以通过嵌入它们来编码其他字母表,以使汉明距离变得有效,例如,
A -> 0000
C -> 0011
G -> 0101
T -> 1001.