二进制的1的个数

Posted wuyi_all_in

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二进制的1的个数相关的知识,希望对你有一定的参考价值。


输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

 


正数负数输入都可以:

二进制的1的个数_反码


class Solution 
public:
//在计算机的世界里,正负数是用补码形式存在的,正数的补码是原码,负数的补码是对应正数的反码加+1;
int NumberOf1(int n)
if(n==0)return 0;
unsigned int flag=1;
int count=0;
while(flag)

if(n&flag)//与之后给的值,不为1,则进入循环
count++;
flag<<=1;

return count;


;

 

以上是关于二进制的1的个数的主要内容,如果未能解决你的问题,请参考以下文章

二进制中1的个数

剑指Offer二进制中1的个数

剑指offer系列5:二进制中1的个数

剑指Offer-二进制中的1的个数

剑指offer-二进制中1的个数

leetcode: 二进制中1的个数