剑指offer 二进制中1的个数

题目

输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

思路

异或运算,找到每一位的1,累加

代码

# -*- coding:utf-8 -*-
class Solution:
    def NumberOf1(self, n):
        # write code here
        i = 0
        count = 0
        while i < 32:
            count += n & 1
            n >>= 1
            i += 1
        return count

猜你喜欢

转载自blog.csdn.net/y12345678904/article/details/80687648