这个题闹懂下面的就没问题了:
如何找1?int型数字是32位
通过n&1判断,如果是结果1,则最后一位是1;
然后让n右移一位 用n>>1就行了
循环判断
public class Solution {
public int NumberOf1(int n) {
int sum=0;
for(int i=0;i<32;i++){
if((n&1)==1){
sum++;
}
n=n>>1;
}
return sum;
}
}
本文介绍了一种计算int型数字中1的个数的方法。通过使用位操作符‘&’和右移运算符‘>>’,可以有效地遍历整数的每一位,检查是否有1存在。这种方法适用于32位的int类型。
384

被折叠的 条评论
为什么被折叠?



