用汉明距离聚类字符串集的最佳方法

时间:2015-01-02 09:23:21

标签: string algorithm cluster-analysis dna-sequence hamming-distance

我有一个包含n个字符串的数据库(n> 1百万),每个字符串有100个字符,每个字符都是abc或{{1} }。

我想找到每个最接近的字符串,最接近的字符串定义为 hamming distance 。我想找到每个k最近的字符串(k <5)。

实施例

d

对于k = 1,它应该返回{(i1,i2),(i2,i1),(i3,i4),(i4,i3)}。对于k = 2,它应该返回{(i1,{i2,i4}),(i2,{i1,i4}),(i3,{i4,i2}),(i4,{i3,i2})}。等等。对于每个字符串,应找到k-nearest字符串。

朴素解决方案具有O(n ^ 2)时间复杂度。我想找到更复杂的解决方案。我找到了一些其他解决方案,但没有一个比天真更好。

如何将这些字符串最佳地分配到群集中?一个字符串可以在两个或更多个集群中。解决方案可能是确定性的或概率性的。

0 个答案:

没有答案