一次搞透,面试中的数1问题的五种方法!
do{
if ((n&1)==1){
result++;
}
n>>= 1;
i++;
} while(i<32);
while(n){
result++;
n&=(n-1);
}
uint16 n1 = n & 0xFFFF;
uint16 n2 = (n>>16) & 0xFFFF;
return result[n1]+result[n2];
架构师之路-分享可落地的架构文章
评论
下载APPdo{
if ((n&1)==1){
result++;
}
n>>= 1;
i++;
} while(i<32);
while(n){
result++;
n&=(n-1);
}
uint16 n1 = n & 0xFFFF;
uint16 n2 = (n>>16) & 0xFFFF;
return result[n1]+result[n2];
架构师之路-分享可落地的架构文章