(个人水平有限,请见谅!) 题目描述: 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 代码示例: class Solution { public: int NumberOf1(int n) { int count = 0; // 将最高位由1变0,否则右移死循环 if (n < 0) { n = n&0x7FFFFFFF; ++count; } while (n != 0) { count += n&1; n = n >> 1; } return count; } };