编码序列的最小距离度量

时间:2018-05-03 11:57:52

标签: algorithm encryption statistics metrics

我正在寻找一个最小距离指标,它可以保留子序列。有了这个,我的意思是第二个序列的任何子序列都可以有不同的表示,但仍然与第一个子序列相同。两个序列的长度始终相同。我熟悉汉明或Levenshtein距离,但在这种情况下它们可能没用。

考虑这个例子:

AABBAA
CCDDCC

距离为0,因为A = CB = D(或AA = CCBB = DD)。

AABBBBBB
CCDDEEEE

距离为2,因为A = CB = E(或AA = CCBB = EEBBBB = EEEE),但B =/= D(或{ {1}})。

但是,此功能的行为可能与此不完全相同。 我只需要知道未编码的序列在重复方面与编码的序列是如何相似的。你可以假设第二个序列是用caesar密码编码的(虽然我不确定是否是转变可能会随着时间而变化。

注意:

我还想过用LZW算法压缩两个序列并比较它们的压缩比。还有其他想法吗?

1 个答案:

答案 0 :(得分:0)

您可以从头开始使用连续数字枚举序列中的元素,然后使用Levenshtein距离或类似的东西。

AACCAABB  --> 11221133  (A->1, C->2, B->3)
CCXXCCYY  --> 11221133  (C->1, X->2, Y->3)

d(AACCAABB, CCXXCCYY) = d(11221133, 11221133) = 0