题目描述
输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。
思路:每次消去二进制中的最低位的1
代码:
class Solution {
public:
int NumberOf1(int n) {
int k=0;
while(n)
{
n=n&(n-1);
k++;
}
return k;
}
};
输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。
思路:每次消去二进制中的最低位的1
代码:
class Solution {
public:
int NumberOf1(int n) {
int k=0;
while(n)
{
n=n&(n-1);
k++;
}
return k;
}
};