1.问题说明

十进制4
0100
十进制8
1000二进制不同的
0100
1000有两位不同

正常的算法

1.两个数字与1,拿出两个数字的最后一位,比较是否相同,直到右移32次,

    for (int i = 0; i < 32; i++){if ((m & 1) != (n & 1)){count++;}m = m >> 1;n = n >> 1;}

眼前一亮的机器算法

0100
1000
1100//异或,结果12,不同的位全部置1

1100 & 1011
12 &(12-1)
0100//异或结果

4&(4-1)
0100&0011
0000//异或结果

比较难想到,也比较难理解

    u = m^n;  //m和n异或while (u)   //相当于找出一个数;二进制中1的个数{count++;u = u & (u - 1);}

一道面试题--两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同相关推荐

  1. 三位整数两位小数掩码_子网掩码转换32位整数

    IP地址优选网写过很多相关文章介绍,一些朋友还是对子网掩码.ip地址的网段等不太了解,我们下面一起来看看网友常常问到的一些相关问题.子网掩码转换32位整数 一.什么是子网掩码? 在了解ip地址的网段之 ...

  2. 限制python计算使用32位整数 (signed 32bit int)

    Python 对整数的处理能力非常强大,强大到什么程度?天文数字也能轻松处理,而且不会发生溢出. 上图展示的是Python对位移操作的结果.来对比一下JavaScript环境中同样的计算是什么结果: ...

  3. 2015百度面试题--对10亿个32位整数去重和排序

    对放在文件中的10亿个32位整数进行去重和排序 :10亿个32位整数的大小约为4GB,这里假设电脑的内存放不下.使用bit位图能够很快解决该问题(其实思想类似于哈希),使用10亿个比特位来表示每个数, ...

  4. 给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中的32位整数

    给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中的32位整数.            1.在文件中至少存在这样一个数?            2.如果有足够的内存,如何处理? ...

  5. [C] 跨平台使用Intrinsic函数范例3——使用MMX、SSE2指令集 处理 32位整数数组求和...

    作者:zyl910. 本文面对对SSE等SIMD指令集有一定基础的读者,以32位整数数组求和为例演示了如何跨平台使用MMX.SSE2指令集.支持vc.gcc编译器,在Windows.Linux.Mac ...

  6. C语言编程中的8位、16位、32位整数的分解与合并

    在单片机的编程中对于8位.16位.32位整数的分解与合并用的比较多,今天做了简要学习,后面还需要加以总结. 练习在VC++6.0编程环境中进行,源程序: #include <stdio.h> ...

  7. [oracle] Oracle存储过程里操作BLOB的字节数据的办法,例如写入32位整数

    作者: zyl910 一.缘由 BLOB是指二进制大对象,也就是英文Binary Large Object的缩写. 在很多时候,我们是通过其他编程语言(如Java)访问BLOB的字节数据,进行字节级的 ...

  8. Python3实现32位整数翻转

    Python3实现32位整数翻转 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 ...

  9. 服务器优盘启动安装win7系统教程,晨枫u盘启动工具安装原版Win7的两种方法(32位64位系统通用)...

    安装原版Win7两类方法 第一类方法(32位64位系统通用): 具体步骤: [1]先使用晨枫U盘启动制作工具制作完启动U盘(参照制作教程). [1]找到Windows7系统的iso镜像,用UltraI ...

最新文章

  1. 2020中国人工智能年度评选正在征集!开放4大类别7大奖项
  2. 人生的84000种可能
  3. 更深的编码器+更浅的解码器=更快的自回归模型
  4. wxWidgets:文档/视图框架
  5. Java int -1无符号右移_java中的无符号右移
  6. 生成目录树CMD命令(bat文件)
  7. tomcat原理,一个客户端请求的处理过程
  8. 挂载(mount)深入理解
  9. 5.7 并行复制配置 基于GTID 搭建中从 基于GTID的备份与恢复,同步中断处理
  10. 戴尔G5 5590重装系统
  11. 【实习周报】2019年6月 前端开发实习工作周报汇总
  12. 简单易懂的现代魔法——Play Framework攻略1
  13. 怎么看PLC梯形图?
  14. win10服务器怎么备份系统,详细教你win10怎么备份系统
  15. mysql定义取值范围_mysql的decimal类型取值范围
  16. (电力开发)376.1 主站通信协议基本结构解析
  17. srand和rand详细讲解
  18. Win10安装cuda和cudnn(可安装多版本并自由切换)
  19. flash中乱数排列(随机数)方法
  20. 人工智能给我们带来新的创业机会,你愿意做局外人吗?

热门文章

  1. HTML5 参数传递
  2. 删除kafka topic
  3. Mac python Tesseract 验证码识别
  4. 【知识梳理1】Android触摸事件机制
  5. 使用Beautifulsoup爬取药智网数据
  6. mysql order by int_mysql order by是怎么工作的?
  7. postgresql存图片字段类型_PostgreSQL让人着迷的多态性,另辟蹊径省时又省力
  8. 泉州经贸职业技术学院计算机系,部门简介-泉州经贸职业技术学院网络电教中心...
  9. linux 无法找到函数定义,找到定义Linux函数的位置
  10. jsonobject修改key的值_JSON字符串操作移除空串更改key/value的介绍