leetcode: 二进制中1的个数
Posted 敲代码的Messi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode: 二进制中1的个数相关的知识,希望对你有一定的参考价值。
描述:
编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为 汉明重量).)。
思想:
我们只需要判断最低位是否是 1即可,然后 右移 一位。
( 此算法 只能解决正数,负数会陷入死循环。)
class Solution
public:
int hammingWeight(uint32_t n)
int count = 0;
while (n)
if (n & 1) //最低位等于 1
count++;
n = n >> 1;
return count;
;
以上是关于leetcode: 二进制中1的个数的主要内容,如果未能解决你的问题,请参考以下文章