LeetCode面试题05.06

美好的一天,从力扣开始

王子公主请看题

整数转换。编写一个函数,确定需要改变几个位才能将整数A转成整数B。

示例1:

复制代码
 输入:A = 29 (或者0b11101), B = 15(或者0b01111)
 输出:2

示例2:

复制代码
 输入:A = 1,B = 2
 输出:2

提示:

  1. A,B范围在[-2147483648, 2147483647]之间

根据提示不难发现a,b都是int类型,我们知道int对应32个比特位,要将a转化为b,其实就是把a的二进制改为b的二进制,那我们只需要找到两个数字有多少个比特上的数字不同就行了。这里就用到了^,他是相同则为0,不同则为1,我们把a,b32个比特位挨个通过^比较一番即可

代码如下

int convertInteger(int A, int B)

{

int a = 0;

for (int i = 0; i < 32; i++)

{

if (((A >> i) & 1)^((B >> i) & 1))

a++;

}

return a;

}

AC

相关推荐
Swift社区14 分钟前
从表格到序列:Swift 如何优雅地解 LeetCode 251 展开二维向量
开发语言·leetcode·swift
sml259(劳改版)1 小时前
数据结构--堆
数据结构·算法·
独家回忆3642 小时前
每日算法-250409
算法
菜还不练就废了2 小时前
4.5蓝桥杯|高塔登顶方案(5025)
职场和发展·蓝桥杯
青椒大仙KI113 小时前
25/4/6 算法笔记<仿真O2DES>基础知识学习
笔记·学习·算法
井云智能AI矩阵系统3 小时前
数字人情感表达突破:微表情自动生成的算法革新
算法
飞川撸码4 小时前
【LeetCode 热题100】73:矩阵置零(详细解析)(Go语言版)
leetcode·矩阵·golang
一只码代码的章鱼4 小时前
数据结构与算法-图论-复习2(差分约束,强连通分量,二分图,LCA,拓扑排序,欧拉路径和欧拉回路)
数据结构·算法·图论
梁辰兴5 小时前
数据结构实验3.3:求解迷宫路径问题
数据结构·算法·深度优先·数组
阿巴~阿巴~6 小时前
蓝桥杯速成刷题清单(上)
c语言·c++·算法·蓝桥杯