写法一:位运算每次右移以为,判断与1是否相等
class Solution {
public:
int NumberOf1(int n) {
int res=0;
for(int i=0;i<32;i++)
if(n>>i & 1) res++;
return res;
}
};
写法二:lowbiot写法
class Solution {
public:
int NumberOf1(int n) {
int res=0;
while(n) n-=n&-n,res++;
return res;
}
};