// 求一个整数中,二进制数含有1的个数
#include <stdio.h>
#include <iostream>
using namespace std;
int solusion(int n)
{
int count = 0 ;
while(n)
{
count++ ;
// 实质上是将最右边的1置为0,再按位与,去掉最后一个1,依此类推直到最后一个0
n = n & (n-1) ;
}
return count ;
}
void main()
{
cout<<"Contains "<<solusion(12)<<endl;
}
求一个整数中,二进制数含有1的个数
最新推荐文章于 2023-02-25 22:03:28 发布