输入:一个整数
输出:该整数二进制中1的个数
eg:9:1001,个数为2
思路:把一个整数减去1再与原整数做与运算,会把最右边的1变为0
public class NumberOfOneInBinary {
// 剑指offer第十题,二进制中1的个数
public int numberOfOne(int n){
int count = 0;
while (n != 0){
n = n & (n-1);
count ++;
}
return count;
}
}