关闭

Number of 1 Bits

标签: leetcode
47人阅读 评论(0) 收藏 举报
分类:

题目:

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 左一i位与原数相与,为零不是1,非零为1

代码:

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


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:14228次
    • 积分:1935
    • 等级:
    • 排名:千里之外
    • 原创:186篇
    • 转载:11篇
    • 译文:0篇
    • 评论:0条