#include<iostream>
using namespace std;
class Solution {
public:
int count(int x) {
int count = 0;
unsigned int f = 1;
while (f)
{
if(x&f)
count++;
f=f << 1;
}
return count;
}//方法一
int count2(int x) {
int count = 0;
while (x)
{
x = x&(x - 1);
count++;
}
return count;
}//方法二
};
int main() {
Solution s;
cout <<s.count(9)<<endl;
cout << s.count(-9) << endl;
cout << s.count(INT32_MAX) << endl;
cout << s.count(INT32_MIN) << endl;
cout << s.count(0) << endl;
cout << s.count2(9) << endl;
cout << s.count2(-9) << endl;
cout << s.count2(INT32_MAX) << endl;
cout << s.count2(INT32_MIN) << endl;
cout << s.count2(0) << endl;
return 0;
}
剑指offer15
最新推荐文章于 2023-03-05 13:55:21 发布