【问题标题】:Determine the maximum of combinations which satisfy a given hamming distance确定满足给定汉明距离的最大组合
【发布时间】:2019-05-19 20:52:28
【问题描述】:

确定一组满足给定汉明距离的数字的最佳方法是什么

假设我有一个 5 位数字,我需要识别汉明距离 >= 2 的数字。

以下是我已经走了多远。然后我认为我需要做的是针对此列表中的其他条目迭代我的列表以删除

最后,我相信我需要另一个外部循环来遍历每个可能的初始条目,因为可能有一个不同的“种子”会产生更多的条目。

#!/usr/bin/env python

TARGET=2

num = range(2**5)
results = []
for i in num:
    for j in num: # 2nd pass
        tmp = i^j
        if bin(tmp).count('1') >=2: 
            results.append(tmp)

print(set(results))

【问题讨论】:

    标签: python hamming-distance


    【解决方案1】:

    (不确定,只是一个例子)

    对于 5 位数字和汉明距离 = 1

    1)

    10000
    00000
    

    2)

    01111
    11111
    

    但它们之间的位不相等,可以在二进制序列中的任何地方。

    所以,对于 1) 有 5 种可能性 S={2^4 , 2^3, 2^2, 2^1, 2^0}

    对于 2) 也有 5 种可能性 S={2^4 , 2^3, 2^2, 2^1, 2^0)

    汉明距离=2:

    1)

    01111
    10111
    

    2)

    11000
    00000
    

    如果汉明距离 == n ,size(number)-n bits 是没用的。

    所以,它只是 size_number 的组合 dist_hamming

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-04-22
      • 2022-01-16
      • 1970-01-01
      • 1970-01-01
      • 2017-09-10
      • 1970-01-01
      • 2018-11-17
      相关资源
      最近更新 更多