编程之美-笔记

编程之美——笔记

2.1 求二进制数中1的个数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*raw 解法*/
int Count(int v)
{
int num = 0;
while(v)
{
if(v % 2 == 1)
num++;
v /= 2;
}
return num;
}
/*使用位操作*/
int Count(int v)
{
int num = 0;
while(v)
{
num += v & 0x01;
v >>= 1;
}
return num;
}