lintcode-181-将整数A转换为B
181-将整数A转换为B
如果要将整数A转换为B,需要改变多少个bit位?
注意事项
Both n and m are 32-bit integers.
样例
如把31转换为14,需要改变2个bit位。
(31)10=(11111)2
(14)10=(01110)2标签
比特位操作 Cracking The Coding Interview
思路
逐位判断即可
code
class Solution {
public:
    /**
     *@param a, b: Two integer
     *return: An integer
     */
    int bitSwapRequired(int a, int b) {
        // write your code here
        int diff = 0, pos = 1;
        for (int i = 0; i < 32; i++) {
            if ((a & pos) != (b & pos)) {
                diff++;
            }
            pos = pos << 1;
        }
        return diff;
    }
};
												
											lintcode-181-将整数A转换为B的更多相关文章
- 181. 将整数A转换为B
		
181. 将整数A转换为B 如果要将整数A转换为B,需要改变多少个bit位? 注意事项 Both n and m are 32-bit integers. 您在真实的面试中是否遇到过这个题? Yes ...
 - lintcode:Flip Bits 将整数A转换为B
		
题目: 将整数A转换为B 如果要将整数A转换为B,需要改变多少个bit位? 样例 如把31转换为14,需要改变2个bit位. ()10=()2 ()10=()2 挑战 你能想出几种方法? 解题: A- ...
 - 题目要求:建立一个类Str,将一个正整数转换成相应的字符串,例如整数3456转换为字符串"3456".
		
题目要求:建立一个类Str,将一个正整数转换成相应的字符串,例如整数3456转换为字符串"3456". 关键:怎么将一个数字转换为字符? [cpp] view plaincopy ...
 - 位运算练习:将整数A转换为B,需要改变多少个bit位
		
思路解析: 将整数A转换为B,如果A和B在第i(0<=i<32)个位上相等,则不需要改变这个BIT位,如果在第i位上不相等,则需要改变这个BIT位.所以问题转化为了A和B有多少个BIT位不 ...
 - LintCode_181  将整数A转换为B
		
题目 如果要将整数A转换为B,需要改变多少个bit位? 如把31转换为14,需要改变2个bit位. ()10=()2 ()10=()2 思路 要考虑负数的问题 如果 一正一负 将他们去全部变成正数 后 ...
 - Lintcode 将整数A转换为B
		
例子 如把31转换为14,须要改变2个bit位. ()10=()2 ()10=()2 贴代码 class Solution { public: /** *@param a, b: Two intege ...
 - lintcode.177 把排序数组转换为高度最小的二叉搜索树
		
把排序数组转换为高度最小的二叉搜索树 描述 笔记 数据 评测 给一个排序数组(从小到大),将其转换为一棵高度最小的排序二叉树. 注意事项 There may exist multiple val ...
 - [LintCode] Sort Integers 整数排序
		
Given an integer array, sort it in ascending order. Use selection sort, bubble sort, insertion sort ...
 - bin(x)	将整数x转换为二进制字符串
		
>>> a 122 >>> b 344 >>> c = bin(a) >>> d = bin(b) >>> c ...
 
随机推荐
- QQ空间认证之数据篇
			
最近,我们发现可以利用开通企鹅媒体平台的方式开通QQ公众号从而绑定我们的QQ号,这样我们所绑定的QQ号就成了认证空间了. 虽说这样很快捷的就认证了我们的QQ空间,但是,起有利也有弊.任何事情都不是十全 ...
 - STM32(9)——通用定时器作为输入捕捉
			
通用定时器作为输入捕获的使用.我们将用 TIM5 的通道 1 (PA0)来做输入捕获,捕获 PA0 上高电平的脉宽(用 WK_UP 按键输入高电平),通过串口打印高电平脉宽时间 输入捕获简介 输入捕获 ...
 - python闭包的概念及使用
			
闭包:在函数里定义了另外一个函数(函数嵌套),内函数里运用了外函数的变量,外函数返回内函数的函数引用(函数名). nonlocal 的使用:闭包内部函数可直接调用外部函数的变量,如果修改需要使用non ...
 - Python(ATM机low版)
			
import osclass ATM: @staticmethod def regst(): while 1: nm = input('请输入你的名字:') mm = input('请输入你的密码:' ...
 - CentOS 搭建 Git 服务器
			
官方文档移步 Git 服务器的搭建 安装 Git #yum install git 创建 Git 专用用户 #useradd git,改密码 #passwd git,切换至 Git 用户 #su gi ...
 - 【转】odoo 10的企业微信发送程序介绍
			
本文介绍的微信发送程序不是独立的模块,是某企业应用的一部分, 源码可在京津冀odoo技术交流群的群共享中下载. [1]基本配置 在work.weixin.qq.com上注册一个企业后,会得到企业的 ...
 - Codeforces Contest 870 前三题KEY
			
A. Search for Pretty Integers: 题目传送门 题目大意:给定N和M个数,从前一个数列和后一个数列中各取一个数,求最小值,相同算一位数. 一道水题,读入A.B数组后枚举i.j ...
 - 开发Windows服务
			
在开发Windows服务时需要注意一点,如果在开发完成后,需要通过命令来进行安装的,那么在开发的时候,需要在服务类上面添加一个安装文件.如下图: 添加完成后,就 ...
 - Bing wallpaper api
			
list: http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=zh-cn idx:-1为明天,1为 ...
 - 用libevent实现的echo服务器及telnet客户端
			
以下代码在vs 2010编译通过,使用的libevent版本是:libevent-2.0.22,win7环境测试通过. 服务器实现: 1 流程图: 2 代码: // my_telnet.cpp : D ...