【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;
    }
}
相关推荐
Wang's Blog37 分钟前
Java 项目实战: 交友项目 - FastDFS:入门案例
java·开发语言·交友
apcipot_rain2 小时前
C++转Java日记(03)
java·开发语言·c++
皮皮林5512 小时前
Java实现微信扫码登录
java
布莱克6052 小时前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map
Yyyyyy~4 小时前
【Java】Day4Web基础知识
java·spring boot
D e re k ZH4 小时前
C++ 系统学习手记:从语法细节到工程实践
开发语言·数据结构·c++·算法
灿飞屋5 小时前
Kotlin与Java虚拟机三:控制流
android·java·开发语言·后端·python·kotlin·安卓
石小石Orz5 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
NE_STOP6 小时前
Spring AI Alibaba - MCP入门
java