统计二进制序列中1的个数

技术文章 7个月前 完美者
1,804 0

标签:while   ++   1的个数   result   位运算   二进制   统计   rgb   问题:   

问题:给定一个无符号整型的对象,统计其二进制序列中1的个数?

 

遍历:

unsigned bit_count(unsigned x)
{
    unsigned result=0;
    while(x){
        result+=x&01?1:0;
        x>>=1;
    }
    return result;
}

 

 

位运算:

unsigned bit_count_2(unsigned x)
{
    unsigned result=0;
    while(x){
        ++result;
        x&=(x-1);    //去除从右往左数出现的第一个1     
    }
    return result;
}    

 

统计二进制序列中1的个数

标签:while   ++   1的个数   result   位运算   二进制   统计   rgb   问题:   

原文地址:https://www.cnblogs.com/xinwang-coding/p/14263671.html

版权声明:完美者 发表于 2021-01-13 11:05:06。
转载请注明:统计二进制序列中1的个数 | 完美导航

暂无评论

暂无评论...