牛客题霸NC120二进制中1的个数Java题解
程序员文章站
2022-04-15 18:31:26
牛客题霸NC120二进制中1的个数Java题解https://www.nowcoder.com/practice/8ee967e43c2c4ec193b040ea7fbb10b8?tpId=117&&tqId=35261&rp=1&ru=/ta/job-code-high&qru=/ta/job-code-high/question-ranking方法:与运算,逐位判断解题思路:让n与1进行与运算逐位判断,如果最后一位是1,则结果+1,当n为0时,跳出循环。...
牛客题霸NC120二进制中1的个数Java题解
方法:与运算,逐位判断
解题思路:让n与1进行与运算逐位判断,如果最后一位是1,则结果+1,当n为0时,跳出循环。
public class Solution {
public int NumberOf1(int n) {
int res = 0;
while(n!=0){ //注意:这里写n>0会报错
if((n&1)==1){ //如果最后一位是1,res++
res++;
}
n>>>=1; //无符号右移1位
}
return res;
}
}
本文地址:https://blog.csdn.net/weixin_44706512/article/details/110210209