计算一个整数n的二进制中有多少个1
n &= n - 1; // 每次消除一个1
int ones(int n) { int _count = 0; while (n != 0) { n &= n - 1; ++_count; } return _count; }
计算一个整数n的二进制中有多少个1
n &= n - 1; // 每次消除一个1
int ones(int n) { int _count = 0; while (n != 0) { n &= n - 1; ++_count; } return _count; }