题目:
思路:
与运算:
x & 1 == 1, 则x二进制最后一位是1
x & 1 == 0, 则x二进制最后一位是0
判断最后一位是否为1,进行count计数,然后进行指针右移;
代码:
class Solution:
def hammingWeight(self, n: int) -> int:
# 与运算:
# x & 1 == 1, 则x二进制最后一位是1
# x & 1 == 0, 则x二进制最后一位是0
# 判断最后一位是否为1,进行count计数,然后进行指针右移;
if not n: return 0
count = 0
while n:
if n & 1 == 1:
count +=1
n >>= 1
return count