两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。
两等长字符串的汉明距离:两字符串对应位置的不同字符的个数。
python实现:
def hamming(a, b):
# compute and return the Hamming distance between the integers
return bin(int(a) ^ int(b)).count("1")
if __name__ == '__main__':
x = int(input("input x:"))
y = int(input("input y:"))
hamming_disance = hamming(a,b)
bin() 返回一个整数 int 或者长整数 long int 的二进制表示。
a^b 异或,相同取0,相异为1.
输入: x = 1, y = 4
输出: 2
解释:
1 (0 0 0 1)
4 (0 1 0 0)
↑↑
上面的箭头指出了对应二进制位不同的位置。
汉明距离计算方法
本文介绍了汉明距离的概念,即两个整数或字符串在二进制表示下不同位的数量,并提供了一个使用Python实现的汉明距离计算函数。通过异或运算和二进制位计数,该函数能有效计算出任意两个整数之间的汉明距离。
1154

被折叠的 条评论
为什么被折叠?



