题目
提示:
输入必须是长度为 32 的 二进制串 。
进阶:
如果多次调用这个函数,你将如何优化你的算法?
题解
代码
// class Solution {
// public:
// int hammingWeight(uint32_t n) {
// int res=0;
// for(int i=0;i<32;i++){
// if((n&(1<<i))!=0)
// res++;
// }
// return res;
// }
// };
class Solution {
public:
int hammingWeight(uint32_t n) {
int res=0;
while(n){
n=n&(n-1);
res++;
}
return res;
}
};