码迷,mamicode.com
首页 > 其他好文 > 详细

位运算统计二进制整数中1的个数

时间:2020-08-03 09:50:59      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:位运算   运算   cin   ++   while   out   就是   end   cout   

k=k&(k-1)可以消除k的二进制数的最后一个1.连续进行这个操作,每次消除一个1,直到全部消除为止。操作次数就是1的个数。

int num=0;

cin>>k;

while(k>0)

{

    k=k&(k-1);

    num++;

}

cout<<num<<endl;

位运算统计二进制整数中1的个数

标签:位运算   运算   cin   ++   while   out   就是   end   cout   

原文地址:https://www.cnblogs.com/huashanqingzhu/p/13424515.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!