C++ - 求一个正整数的二进制表示中1的个数

分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net 

/*
 * Created by Chimomo
 */

#include 

#define NULL 0

using namespace std;

int f(int x) {
    int n = 0;
    while (x) {
        n++;
        x &= x - 1;
    }
    return n;
}

int main() {
    cout << f(26) << endl;
    return 0;
}

// Output:
/*
3

*/

 

你可能感兴趣的:(C++)