輸入一個整數,輸出該數二進制表示中1的個數。其中負數用補碼錶示。

class Solution {
public:
     int NumberOf1(int n) {
         int index=1;
         int num = 0;
            while(index)
            {
                if((n&index))
                {
                    num++;
                }
              
                index=index<<1;
            }
         return num;
     }
};

 

index=index<<1 左移一位 在硬件操作中我們經常需要對某一位進行清零或者置1操作   例如對某一寄存器的第25位清零使其使能

我們可以這樣操作 x = (x&1<<25) 

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