题解 | #二进制中1的个数#
二进制中1的个数
http://www.nowcoder.com/practice/8ee967e43c2c4ec193b040ea7fbb10b8
public int NumberOf1(int n) {
// 如果一个数部位0 ,那么必有一位是1,那么这个数-1使得是1的那一位变为0,再与原数相与就会消掉一个1;
int count = 0;
while(n != 0 ){
count++;
n = n & (n-1);
}
return count;
}
}
