1、n&(n-1) 时间复杂度(O(1))
2、其他用处 判断是不是2的整数次方 是的话,结果是0
代码
int fun(int n){
int cnt = 0;
while(n){
cnt++;
n&=(n-1);
}
return cnt;
}
1、n&(n-1) 时间复杂度(O(1))
2、其他用处 判断是不是2的整数次方 是的话,结果是0
代码
int fun(int n){
int cnt = 0;
while(n){
cnt++;
n&=(n-1);
}
return cnt;
}