【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;
    }
}
相关推荐
本喵是FW几秒前
C语言手记1
java·c语言·算法
咱就是说不配啊5 分钟前
3.19打卡day33
数据结构·c++·算法
2501_924952698 分钟前
嵌入式C++电源管理
开发语言·c++·算法
洛阳泰山8 分钟前
MaxKB4j Docker Compose 部署指南
java·docker·llm·springboot·rag·maxkb4j
2401_8426236514 分钟前
C++中的访问者模式高级应用
开发语言·c++·算法
森林里的程序猿猿25 分钟前
垃圾收集器G1和ZGC
java·jvm·算法
weixin_4041576828 分钟前
Java高级面试与工程实践问题集(五)
java·开发语言·面试
fengci.33 分钟前
ctfshow(web入门)295-300
java·开发语言·学习
机器学习之心34 分钟前
LSBoost增强算法回归预测+SHAP可解释分析+新数据预测(多输入单输出)MATLAB代码
算法·matlab·回归·lsboost·shap可解释分析
重庆小透明1 小时前
【面试问题】java字节八股部分
java·面试·职场和发展