#include <iostream>
using namespace std;
int numberOf1(int n)
{
int cnt=0;
while(n)
{
n=n&(n-1); //把n的二进制中最低位的1变为0
cnt++;
}
return cnt;
}
int main()
{
cout<<numberOf1(8);
cout<<numberOf1(-1);
return 0;
}
《剑指offer》面试题10(二进制中1的个数)
最新推荐文章于 2024-01-28 20:24:32 发布