public int hammingWeight(int n) {
int bits = 0;
int mask = 1;
for (int i = 0; i < 32; i++) {
if ((n & mask) != 0) {
bits++;
}
mask <<= 1;
}
return bits;
}
public int hammingWeight2(int n) {
int res = 0;
while (n != 0) {
res++;
n = n & (n-1); // 总能将n的最低位1变为0
}
return res;
}
07-13
150
07-15
288
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交