重构以下代码并保持代码功能不变 while(x) x -= (x&-x),++res;
时间: 2024-05-04 12:16:43 浏览: 57
> 0) ? x & (-x) : 1;
下面是重构后的代码:
```cpp
while (x) {
if (x & 1) {
x--;
} else {
x -= x & (-x);
}
}
```
这个代码的功能是将变量 x 减到 0,每次将 x 减去一个 2 的整数次幂。
阅读全文