题解 | #牛群的编码统计#

牛群的编码统计

https://www.nowcoder.com/practice/89500cbfd12a4c9f893aafb3c308baa2

  1. 题目考察的知识点

位计算

  1. 题目解答方法的文字分析

count代表32位有符号整数的二进制字符串中1的个数。根据 与运算 定义,设二进制数字 nnn ,则有: 若 n&1=0,则 n的二进制 最右一位 为 0; 若 n&1=1 ,则 n的 二进制 最右一位 为 1。 循环逐位判断: 当 n=0时跳出。在循环的过程中统计1的个数count++; 。因为n是32位有符号整数的二进制表示,它由1和0共同组成,则0的个数是32-count。

  1. 本题解析所用的编程语言

java

  1. 完整且正确的编程代码
import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param n int整型 
     * @return int整型
     */
    public int countZeros (int n) {
        //count代表32位有符号整数的二进制字符串中1的个数
        int count =0;
        while(n!=0){
            
            if((n&1)==1){
                count++;
            }
            n>>>=1;
        }
        // 由于32位有符号整数是由1和0组成的,所以32-count即为0的个数
        return 32-count;
    }
}
全部评论

相关推荐

10-25 00:32
香梨想要offer:感觉考研以后好好学 后面能乱杀,目前这简历有点难
点赞 评论 收藏
分享
寿命齿轮:实习就一段还拉了,项目一看就不是手搓,学历也拉了,技术栈看着倒是挺好,就是不知道面试表现能咋样。 不过现在才大三,争取搞两端大厂实习,或者一个纯个人项目+一段大厂,感觉秋招还是未来可期。
投递美团等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务