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.
代码
int hammingWeight(uint32_t n) {
int result = 0;
while(n != 0)
{
(n & 1) ? result++ : result;
/* if(n & 1)
result++;
else
;
*/
n >>= 1;
}
return result;
}