LeetCode面试题 05.06. 整数转换

面试题 05.06. 整数转换

  • 描述
  • 示例1:
  • 示例2:
  • 解题思路
  • 代码

描述

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

示例1:

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

示例2:

输入:A = 1,B = 2
输出:2

解题思路

本题可以转换成求A和B二进制位有多少位不同

代码

int convertInteger(int A, int B){
    int i=0;
    int count=0;
    for(i=0;i<32;i++)
    {
        if(((A>>i)&1) != ((B>>i)&1))
        {
            count++;
        }
    }
    return count;

}

你可能感兴趣的:(leetcode,算法,数据结构)