快速法求得二进制中1的个数
这种方法速度较快,运算次数只与1的个数有关。原理是不断的清除n的二进制表示中最右边的1,同时累加计数器,直至n为0:
代码
C++:
#include <iostream>
using namespace std;
int bitcount(int x);
int main(int argc, char *argv[]) {
cout<<"请输入数字:"<<endl;
int x;
cin>>x;
int y = bitcount(x);
cout<