191. 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.
求出输入整数的32位中有多少位值为1.
代码如下:
1 class Solution { 2 public: 3 int hammingWeight(uint32_t n) { 4 unsigned pos = 1 << 31; 5 int count = 0; 6 while(pos) 7 { 8 if(pos & n) 9 { 10 count++; 11 } 12 pos >>= 1; 13 } 14 return count; 15 } 16 };
时间: 2024-10-08 19:35:19