【面试】二进制妙用
1.求下面 函数 的返回值(微软)
int func( x )
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
}
return countx;
}
思路:将x转化为2进制,看含有的1的个数。
假定x=6, 答案 为2;
假定x = 9999,答案为8。
1.求下面 函数 的返回值(微软)
int func( x )
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
}
return countx;
}
思路:将x转化为2进制,看含有的1的个数。
假定x=6, 答案 为2;
假定x = 9999,答案为8。