剑指 offer set 5 二进制中 1 的个数

总结

1. 负数右移会保持其符号. 比如 0x80000000 右移, 其对应的绝对值也是 0X80000000, 其右移一位并保持符号, 得到 0XC0000000. 符号位保持, 使得负数永远都无法右移到 0

2. 正解 x&(x-1), 有几个 1 就需要运算几次, 而不是稳定的 32 次

原文地址:https://www.cnblogs.com/xinsheng/p/3561490.html