在本章内容中主讲n&=n-1与n+=n&-n;
判断一个数的二进制中有几个1,
通常想到的办法是不断右移,不断判断(记住右移与左移是针对二进制中所有位数的,并非简单末尾指针的移动)
代码如下:
int fib(int n)//还可以继续优化
{
int count=0;
for(int i=0;i<32
在本章内容中主讲n&=n-1与n+=n&-n;
判断一个数的二进制中有几个1,
通常想到的办法是不断右移,不断判断(记住右移与左移是针对二进制中所有位数的,并非简单末尾指针的移动)
代码如下:
int fib(int n)//还可以继续优化
{
int count=0;
for(int i=0;i<32