leetcode:191 Number of 1 Bits-每日編程第十三題

Number of 1 Bits

Total Accepted: 63943 Total Submissions: 169155 Difficulty: Easy

Write a function that takes an unsigned integer and returns the number of ’1' bits it has (also known as the Hamming weight).

For example, the 32-bit integer ’11' has binary representation 00000000000000000000000000001011, so the function should return 3.

 

思路:

1).n&1判斷n是最後一位是否爲1,是的話,num+1.之後再右移一位。

2).重複1). 直到n變爲0

class Solution {
public:
    int hammingWeight(uint32_t n) {
        int num=0;
        while(n>0){
            if(n&1==1){
                num++;
            }
            n>>=1;
        }
        return num;
    }
};


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