详细
n&=(n-1) 每次必定会消去一个一,所以算法复杂度为log(n),也就是该数中1的个数
class Solution {
public:
int hammingWeight(uint32_t n) {
int num = 0;
while(n){
n &= (n-1);
num++;
}
return num;
}
};
详细
n&=(n-1) 每次必定会消去一个一,所以算法复杂度为log(n),也就是该数中1的个数
class Solution {
public:
int hammingWeight(uint32_t n) {
int num = 0;
while(n){
n &= (n-1);
num++;
}
return num;
}
};