攜程筆試

1、求二進制中1的個數?

 public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        long val = sc.nextLong();
        int count = 0;
        while(val != 0){
            //這個數和1取& == 1,那麼說明它是1。
            if((val & 1) == 1)
                count++;
            val = val >> 1;
        }
        System.out.println(count);
    }

通過率44%.
哪出錯了,如果這個數是負數的話,那麼右移就陷入了死循環。那就嘗試一下左移好了。
之前做過這道題
https://blog.csdn.net/xuchonghao/article/details/80100403

3、LRU,還在研究!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章