剑指Offer(Python多种思路实现):二进制中1的个数

剑指Offer(Python多种思路实现):二进制中1的个数

题目:二进制中1的个数

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

解题思路一:

class Solution:
    def hamming_weight(n):
        count = 0
        for _ in range(32):
            count += (n&1==1)
            n >>= 1
        return count

解题思路二:

def hamming_weigth(n):
        bits = 0
        while n:
            bits += 1
            n = (n-1) & n
        return bit
发布了25 篇原创文章 · 获赞 1 · 访问量 6411

猜你喜欢

转载自blog.csdn.net/weixin_44151089/article/details/104437868
今日推荐