美文网首页
leetcode--191--位1的个数

leetcode--191--位1的个数

作者: minningl | 来源:发表于2020-04-05 23:12 被阅读0次

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

示例 1:

输入:00000000000000000000000000001011
输出:3
解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 '1'。

示例 2:

输入:00000000000000000000000010000000
输出:1
解释:输入的二进制串 00000000000000000000000010000000 中,共有一位为 '1'。

示例 3:

输入:11111111111111111111111111111101
输出:31
解释:输入的二进制串 11111111111111111111111111111101 中,共有 31 位为 '1'。

链接:https://leetcode-cn.com/problems/number-of-1-bits

思路:
1、将二进制数&1即为其最低位的值,将二进制数没计算一次最低位的值后除以2,拿到新的二进制数,最低位之和即为1的个数

Python代码:

class Solution(object):
    def hammingWeight(self, n):
        """
        :type n: int
        :rtype: int
        """
        ret = 0 
        while n:
            ret += n&1
            n = int(n/2)
        return ret

C++代码:

class Solution {
public:
    int hammingWeight(uint32_t n) {
        int ret=0;
        while (n){
            ret += n&1;
            n = int(n/2);
        }
        return ret;
    }
};
``

相关文章

  • leetcode--191--位1的个数

    题目:编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。 示...

  • 位1的个数

    编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。 示例 :...

  • 【1】位1的个数

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

  • 1 - Easy - 位1的个数

    编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。 示例 :...

  • 44位1的个数

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

  • 【LeetCode】位1的个数

    题目描述: 编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)...

  • Leetcode 位1的个数

    题目描述 leecode第191题:编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数...

  • 191.位1的个数

    题目 编写一个函数,输入是一个无符号整数,返回的是它所有 位1 的个数(也被称为汉明重量)。 例如,32位整数 '...

  • 191. 位1的个数

    内容 编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。 示...

  • 01_位1的个数

网友评论

      本文标题:leetcode--191--位1的个数

      本文链接:https://www.haomeiwen.com/subject/ivjmphtx.html