算法题:求二进制位中0的个数

来源:互联网 发布:饥荒 知乎 编辑:程序博客网 时间:2024/06/08 13:11
#include <iostream>using namespace std;//古有求二进制数中1的个数,今有求二进制中0的个数。int Grial(int x){    int count = 0;    while (x + 1)    {        count++;        x |= (x + 1);    }    return count;}int main(){    cout << Grial(1) << endl;    return 0;}//为了方便验证,我把求二进制数中1的个数也写下来。#include <iostream>using namespace std;int Grial(int x){    int count = 0;    while (x)    {        count++;        x &= (x - 1);    }    return count;}int main(){    cout << Grial(3) << endl;    return 0;}
2 0
原创粉丝点击