【LC】191. 位1的个数

题目描述:

给定一个正整数 n,编写一个函数,获取一个正整数的二进制形式并返回其二进制表达式中

设置位的个数(也被称为汉明重量)。

示例 1:

复制代码
输入:n = 11
输出:3
解释:输入的二进制串 1011 中,共有 3 个设置位。

示例 2:

复制代码
输入:n = 128
输出:1
解释:输入的二进制串 10000000 中,共有 1 个设置位。

示例 3:

复制代码
输入:n = 2147483645
输出:30
解释:输入的二进制串 1111111111111111111111111111101 中,共有 30 个设置位。

题解:

复制代码
class Solution {
    public int hammingWeight(int n) {
        int count = 0;
        while (n != 0) {
            // 二进制最后一位
            count += n & 1;
            n >>= 1;
        }
        return count;
    }
}
相关推荐
ZPC8210几秒前
opencv 实现图像拼接
人工智能·python·算法·机器人
好学且牛逼的马4 分钟前
【手写Easy-Spring|1】
java·后端·spring
今天多喝热水6 分钟前
Lua脚本实现滑动窗口
java·开发语言·lua
没有bug.的程序员7 分钟前
Spring Cloud Gateway:API网关限流与熔断实战
java·开发语言·数据库·spring boot·gateway·api·springcloud
爱学习的阿磊8 分钟前
C++代码动态分析
开发语言·c++·算法
WWZZ202510 分钟前
C++:STL(容器deque)
开发语言·c++·算法·大模型·具身智能
AI科技星10 分钟前
加速运动正电荷产生加速度反向引力场的详细求导过程
人工智能·线性代数·算法·机器学习·矩阵·概率论
近津薪荼10 分钟前
优选算法——双指针专题3(快慢双指针)
c++·学习·算法
亓才孓14 分钟前
JVM栈帧和堆存储什么类型的数据的分析
java·开发语言
shengli72215 分钟前
C++与硬件交互编程
开发语言·c++·算法