IT常识
技术 Python PHP JavaScript IOS Android Java 数据库 资源 公众号 代码片段 github
  • IT常识
  • 技术

牛客网2016校招真题在线编程之懂二进制

Posted 2020-10-15

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了牛客网2016校招真题在线编程之懂二进制相关的知识,希望对你有一定的参考价值。

 

 先对两个数进行位异或,这样能够得到两个数中有多少位是不同的,然后再数一下这个数中有多少位1就可以了。

 

AC代码:

public class Solution {
    
    /**
     * 获得两个整形二进制表达位数不同的数量
     * 
     * @param m 整数m
     * @param n 整数n
     * @return 整型
     */
    public int countBitDiff(int m, int n) {
        int k = m ^ n;
        int res = 0;
        while(k>0){
            if( (k & 1) == 1) res++;
            k>>=1;
        }
		return res;
    }
    
}

  

 题目地址: https://www.nowcoder.com/practice/ba033b0d1c2f497da1dd04330cc003af?tpId=49&tqId=29232&tPage=1&rp=1&ru=/ta/2016test&qru=/ta/2016test/question-ranking

.

以上是关于牛客网2016校招真题在线编程之懂二进制的主要内容,如果未能解决你的问题,请参考以下文章

牛客网编程练习之网易2017校招题:下厨房

2017年校招全国统一模拟笔试(第二场)编程题集合-牛客网

手机牛客在线编程入口在哪

2016校招真题编程-懂二进制

nowcoder-2017校招真题保留最大的数

牛客网在线编程题,用java代码编程能实现自动导包么?

(c)2006-2024 SYSTEM All Rights Reserved IT常识