思路
时间复杂度O(n),空间复杂度O(1)。
代码
public class Solution {
public int NumberOf1(int n) {
int count = 0;
while(n != 0) {
count++;
n &= n-1;
}
return count;
}
}
笔记
n&n-1作用是将n最后一位1变成0,类似树状数组的lowbit。