For example, the 32-bit integer ’11' has binary representation
00000000000000000000000000001011
, so the function should return 3.Credits:
Special thanks to @ts for adding this problem and creating all test cases.
public class Solution {
// you need to treat n as an unsigned value
public int hammingWeight(int n) {
int ret = 0;
while(n!=0) {
if((n&1)==1) ret+=1;
n = n>>>1;
}
return ret;
}
}
public class Solution {
// you need to treat n as an unsigned value
public int hammingWeight(int n) {
int ret = 0;
for (int i = 0; i < 32; i++) {
ret += (n & 1);
n = n >> 1;
}
return ret;
}
}
没有评论:
发表评论