美文网首页
剑指 Offer 第15题:二进制中1的个数

剑指 Offer 第15题:二进制中1的个数

作者: 放开那个BUG | 来源:发表于2022-07-08 14:15 被阅读0次

1、前言

题目描述

2、思路

使用逐位判断的方法,将32数字向右移位,然后与1相&。
如果 n 的二进制为最后一位是1,则 n & 1 = 1;如果 n 的二进制为最后一位是0,则 n & 1 = 0;

3、代码

  public int hammingWeight(int n) {
        int ans = 0;
        for(int i = 0; i < 32; i++){
            ans += (n >> i) & 1;
        }
        return ans;
    }

相关文章

网友评论

      本文标题:剑指 Offer 第15题:二进制中1的个数

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