笔试题:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数
答案借鉴《剑指offer》
思路:例如13——1101
1101&1100 = 1100
1100&1011 = 1000
1000&0111 = 0000
代码:
int NumberOf1(int n)
{
int count = 0;
while(n)
{
++count;
n = (n-1)&n;
}
return count;
}
笔试题:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数
答案借鉴《剑指offer》
思路:例如13——1101
1101&1100 = 1100
1100&1011 = 1000
1000&0111 = 0000
代码:
int NumberOf1(int n)
{
int count = 0;
while(n)
{
++count;
n = (n-1)&n;
}
return count;
}