LeetCode(191)Number of 1 Bits

来源:互联网 发布:淘宝买家号注册 编辑:程序博客网 时间:2024/06/05 16:26

题目

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 ret = 0;          while(n != 0)          {              ++ret;              n &= (n-1); //抹掉最右边的1          }//while          return ret;      }};


0 0
原创粉丝点击