美文网首页
坑爹的>>>与>>

坑爹的>>>与>>

作者: portability | 来源:发表于2018-08-08 13:13 被阅读0次

leetcode 191
题目背景:
大体意思就是一个int数字转成2进制后有多少个1。


思路一:

直接转成2进制数组,sum(int[])来获取所有的1;

思路二:


我联想到10进制转2进制,所有的1都出现在余数reminder中,所以只要有余数就在result中+1
代码如下:

public class Solution {
    // you need to treat n as an unsigned value
    public int hammingWeight(int n) {
        int res = 0;
        while(n != 0){
            if((n & 1) == 1){
                res++;
            }
            n = n >>> 1;
        }
        return res;
    }
}

n&1 == 1 判断当前n是否是奇数,是奇数,则res++。submit的时候一直报错,timing out后面感觉应该是>>>>>的区别。本题应该采用>>>,因为如果采用>>是有符号右移操作,负数会导致n一直非0,进入死循环。

思路三


利用一个mask来与n进行&运算,最后通过mask的迭代左移进行计数。
代码如下:

        int mask = 1;
        int count = 0;
        for(int i=0; i < 32; i++){
            if((n & mask) != 0) ++count;
            mask = mask << 1;
        }
        return count;

相关文章

  • 坑爹的>>>与>>

    leetcode 191题目背景:大体意思就是一个int数字转成2进制后有多少个1。 思路一: 直接转成2进制数组...

  • 坑爹

    坑爹…豆瓣就是个坑爹货

  • 有哪些很坑的专业

    工业分析与检验 坑爹专业之一

  • 坑爹的爹坑

    01 村里的奇葩事,真事!就是奇葩的让人咂舌。张明白有一个‘奇葩’的爹,人称张算计。 清明节,村里的张算计死了。人...

  • 坑爹?爹挖的坑

    坑爹的儿子都是被爹坑的 白米先生 字数 474 · 阅读 1 2020-06-13 09:35 说起来像绕口令。 ...

  • 坑爹的爹

    2023年1月31日 星期三 下午4:44 昨晚上娃爹又一晚上没回来了! 第一次一晚上跟他正面对决!从来没有这么直...

  • 2018-02-08

    坑爹,坑娘。还没见过坑儿子的

  • “坑爹”与“坑孩”的PK

    前不久,在校车上,一个高中学生大骂送车老师:你就是个贱B!你有钱吗?我用得着你管么?你算什么东西? 原因只是起于老...

  • 奥本海默——一个坑爹的特例

    坑爹算不上新的发明,古今中外,被坑惨了的爹不在少数。那些坑爹的主儿,大都年少轻狂、不学无术。 不过,凡事都有例外。...

  • 常说坑爹熊孩子, 却很少听闻坑孩子的爹! 盘点那些娱乐圈最坑娃的

    坑爹常有,而坑娃不常有。故虽有坑娃的爹,却鲜为人知! 生活中,就时常会看到坑爹的熊孩子,因为或肆无忌惮,或荒诞不羁...

网友评论

      本文标题:坑爹的>>>与>>

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