Skip to content

Latest commit

 

History

History
22 lines (20 loc) · 574 Bytes

54. 位1的个数.md

File metadata and controls

22 lines (20 loc) · 574 Bytes

编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量)。

class Solution(object):
    def hammingWeight(self, n):
        res = 0
        while n:
            res += n & 1
            n >>= 1
        return res
class Solution(object):
    def hammingWeight(self, n):
        #n & (n - 1) 的技巧可以消除二进制中最后一个 1
        res = 0
        while n:
            res += 1
            n &= n - 1
        return res