Leetcode 191 Number of 1 Bits 位运算

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode 191 Number of 1 Bits 位运算相关的知识,希望对你有一定的参考价值。

统计一个值的二进制1的个数,用与(&)和向左移位(<<)

编程之美中的2.1节有详细解答。

解法一:

 1 class Solution {
 2 public:
 3     int hammingWeight(uint32_t n) {
 4         int ans = 0;
 5         for(;n;n = n>>1){
 6             ans += n&1;
 7         }
 8         return ans;
 9     }
10 };

解法二:

 1 class Solution {
 2 public:
 3     int hammingWeight(uint32_t n) {
 4         int ans = 0;
 5         for(;n;n &=(n-1)){
 6             ans ++;
 7         }
 8         return ans;
 9     }
10 };

 

以上是关于Leetcode 191 Number of 1 Bits 位运算的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 191. Number of 1 Bits

leetcode 191. Number of 1 Bits

191. Number of 1 Bits(LeetCode)

[leetcode-191-Number of 1 Bits]

LeetCode 191 Number of 1 Bits

LeetCode - 191. Number of 1 Bits