[leetcode] Number of 1 Bits

Number of 1 Bits

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

题解:

class Solution {
public:
    int hammingWeight(uint32_t n) {
        int res = 0;
        for(int i=0;i<32;i++) {
            if(n&0x01)
                res++;
            n = n>>1;
        }
        return res;
    }
};
View Code

 

posted on 2015-03-11 10:16  cha1992  阅读(127)  评论(0编辑  收藏  举报

导航