ITPub博客

首页 > 应用开发 > > 编程计算一个数的二进制形式1位的总数

编程计算一个数的二进制形式1位的总数

作者:xzwsun 时间:2019-09-06 15:55:23 0 删除 编辑

我们拿到这样的题目,第一思路可能是进行移位操作,每当移除的位为1时,设定一个变量去统计1的个数,但是这种方法可能相对来说比较麻烦。

    大家可以看一下下面这种方法,是不是简单一些:就是一个数不断与自己减1相与,其实功能就是把自己的最低的1位去掉,肯定也必须设定一个变量去统计循环执行的次数,也就是位为1的总数。

点击(此处)折叠或打开

int fun(int x)

{

int count = 0;

while(x)

{

x = x&(x-1);

count ++;

}

return count;

}

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2567/viewspace-3124720/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-16

  • 博文量
    100
  • 访问量
    924