力扣面试题 05.06. 整数转换(位运算)

Problem: 面试题 05.06. 整数转换

文章目录

题目描述

思路及解法

1.通过将两个数进行异或 操作求出两个数中不同的位(不同的位异或后为二进制1);

2.统计异或后不同的位的个数(即异或后二进制为1的个数)

复杂度

时间复杂度:

O ( 1 ) O(1) O(1)

空间复杂度:

O ( 1 ) O(1) O(1)

Code

cpp 复制代码
class Solution {
public:
    /**
     * Bit operation
     * @param A Given number
     * @param B Given number
     * @return int
     */
    int convertInteger(int A, int B) {
        int c = A ^ B;
        int diffCount = 0;
        int mask = 1;
        for (int i = 0; i < 32; ++i) {
            if ((c & mask) != 0) {
                diffCount++;
            }
            mask <<= 1;
        }
        return diffCount;
    }
};
相关推荐
Shadow(⊙o⊙)17 小时前
专题四:前缀和
数据结构·算法
JAVA面经实录91718 小时前
高频算法面试题
java·计算机网络·算法·面试
qq_4523962318 小时前
第十一篇:《资源管理:Requests/Limits、ResourceQuota、LimitRange》
算法·贪心算法
Tisfy18 小时前
LeetCode 2095.删除链表的中间节点:两次遍历 / 一次遍历(快慢指针)
算法·leetcode·链表·题解·双指针
Irissgwe18 小时前
AVL树详解
数据结构·c++·算法·二叉树·c·二叉搜索树·avl
凌波粒18 小时前
LeetCode--131.分割回文串(回溯算法)
算法·leetcode·职场和发展
北域码匠18 小时前
奇偶归并排序:并行计算的排序利器
数据结构·算法·c#·排序算法
成都易yisdong18 小时前
上海某平面坐标系与CGCS2000坐标互转详解(含全域拟合点、实战案例、保密规范)
大数据·人工智能·算法
2601_9618451519 小时前
花生十三网课网盘|百度网盘|下载
数据结构·算法·链表·贪心算法·排序算法·线性回归·动态规划
快手技术19 小时前
征集令|快手探索者LLM-Rec挑战赛正式发布!
算法