题目描述
输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。
解析:本题采用二进制数减1 与原数做与运算
public class Solution {
public int NumberOf1(int n) {
int sum=0;
while(n!=0){
n=n&(n-1);
sum=sum+1;
}
return sum;
}
}
题目描述
输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。
解析:本题采用二进制数减1 与原数做与运算
public class Solution {
public int NumberOf1(int n) {
int sum=0;
while(n!=0){
n=n&(n-1);
sum=sum+1;
}
return sum;
}
}