练习2:Hamming Distance汉明距离
Posted hzerdudu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了练习2:Hamming Distance汉明距离相关的知识,希望对你有一定的参考价值。
1、链接地址
https://leetcode.com/problems/hamming-distance/description/
2、题目要求
汉明距离指两个整数的二进制表示中,对应位置数字不同的位数
注意:两个整数的范围是[0,2**31)
示例:
输入:x=1,y=4
输出:2
解释:
1 (0 0 0 1) 4 (0 1 0 0) ↑ ↑
1和4的二进制如上,箭头指示的两个地方二进制位是不同的,总共有两个地方,所以输出2
3、解答
1 class Solution: 2 def hammingDistance(self, x, y): 3 """ 4 :type x: int 5 :type y: int 6 :rtype: int 7 """ 8 xor = x ^ y 9 count = bin(xor).count("1") 10 11 return count
4、官方解答
暂时还没有给出官方答案
5、注意事项
(1)x^y执行异或操作,最终结果为1的二进制位表示该位置是不同的,但是整个结果是一个十进制数字
(2)将上面得到的十进制数字执行bin操作,得到"0b101"字符串表示的二进制
(3)使用字符串的count方法可以得到某个字符的统计值
以上是关于练习2:Hamming Distance汉明距离的主要内容,如果未能解决你的问题,请参考以下文章
[LeetCode] Hamming Distance 汉明距离
477. Total Hamming Distance 总的汉明距离
LeetCode 461. Hamming Distance (汉明距离)