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

剑指 Offer 15. 二进制中1的个数

作者: bangbang2 | 来源:发表于2020-08-15 10:13 被阅读0次
    image.png
    image.png

    n&1如果为1,代表最右边数字为1,如果为0,代表最右边数字为0
    Java中无符号右移,利用>>>
    然后不断的把数字右移


    image.png
    很明显,+的优先级要高于&,所以要加一个(),否则得不出来结果
    public class Solution {
        public int hammingWeight(int n) {
            int res = 0;
            while(n != 0) {
                res += n & 1;
                n >>>= 1;
            }
            return res;
        }
    }
    

    相关文章

      网友评论

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

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