题目:
两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。
给出两个整数 x 和 y,计算它们之间的汉明距离。注意:0 ≤ x, y < 231.
思路:
运用位运算,异或 和右移
解答:
class Solution:
def hammingDistance(self, x: int, y: int) -> int:
#用异或,同为0,异为1
z=x^y
res=0
#判断z中1的个数
while z!=0:
#判断最后一位是否为1
if z & 1:
res+=1
z>>=1
return res