3月-191。ビット数1

class Solution:
    def hammingWeight(self, n: int) -> int:

        #将整数转化为二进制
        res = 0 
        while n>0:
            res+=(n%2)
            n = n//2
        return res

        #n&n-1会把最后一个1变为0
        ret = 0
        while n:
            n &= n - 1
            ret += 1
        return ret

        return bin(n).count('1')
  •  整数を2進数に変換し、1の数を数える方法
  •  n&n-1を使用して、最後の桁を1に変更し、1の数をカウントします。
  •  bin(n)APIを使用して、整数を2進文字列に直接変換し、1の数を数えます。

おすすめ

転載: blog.csdn.net/weixin_37724529/article/details/115074326