总算觉得Comp arch的TA没白当hhh
问题描述
The Hamming distance between two integers is the number of positions at which the corresponding bits are different.
Given two integers x and y, calculate the Hamming distance.
Note:
0 ≤ x, y < 231.
思路
先用xor得出不一样的数位
一个个跟1进行&,然后right shift
def hammingDistance(self, x, y):
"""
:type x: int
:type y: int
:rtype: int
"""
a = x ^ y
count = 0
while a:
if a & 1 == 1:
count += 1
a = a>>1
return count