解題思路:
位運算
eor & -eor == eor & (~eor + 1) 取出數中最後一位的操作
class Solution {
public:
int hammingWeight(uint32_t n) {
int ret=0;
while(n)
{
n-=(n & -n);//每次減n最後一位1 ,減了多少次。就有多少個1
ret++;
}
return ret;
}
};