求数的二进制表示中的1的个数

来源:互联网 发布:商业计划书的优化答案 编辑:程序博客网 时间:2024/06/04 01:22

三种方法

int numberOf1(int n){

int count=0;
while(n){
if(n&1)
count++;
n=n>>1;
}
return count;
}//第一种
int NumerOf1(int n){
int count=0;
unsiged int flag=1;
while(flag){
if(n&flag){
count++;
flag=flag<<1;
}
}
return count;
}//第二种
int NumberOf1(int n){
int count=0;
while(n){
++count;
n=(n-1)&n;
}
return count;
}//求二进制中的1的个数