1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
class Solution { public: #if 0 int hammingWeight(int n) { std::bitset<32> bs(n); return bs.count(); } #endif int hammingWeight(int n) { int ans = 0; while(n) { n = n & (n - 1); ans++; } return ans; } };