当前位置: 首页 > article >正文

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

Problem: 面试题 05.06. 整数转换

文章目录

  • 题目描述
  • 思路及解法
  • 复杂度
  • Code

题目描述

在这里插入图片描述

思路及解法

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

复杂度

时间复杂度:

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

空间复杂度:

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

Code

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;
    }
};

http://www.kler.cn/a/232540.html

相关文章:

  • catchadmin-webman 宝塔 部署
  • 宗馥莉的接班挑战:内斗升级,竞品“偷家”
  • 分布式锁实践方案
  • React Hooks在现代前端开发中的应用
  • 【机器学习】如何配置anaconda环境(无脑版)
  • Docker compose部署portainer
  • Springboot 整合 Elasticsearch(三):使用RestHighLevelClient操作ES ①
  • 神经网络 | 基于 CNN 模型实现土壤湿度预测
  • re:从0开始的CSS学习之路 8. 浏览器默认样式
  • CleanMyMac2024智能算法有哪些优点和缺点?
  • Qt PCL学习(文章链接汇总)
  • C#,聚会数(相遇数,Rencontres Number)的算法与源代码
  • 火星文:网络时代下的语言
  • c实现链表
  • Ubuntu文件系统结构
  • Docker的镜像和容器的区别
  • 【力扣白嫖日记】SQL
  • 【GAMES101】Lecture 19 透镜
  • Vue3编写简单的App组件(二)
  • Linux系统安全之iptables防火墙
  • MATLAB实现LSTM时间序列预测
  • 7机器人位姿的数学描述与坐标变
  • windowsserver 2016 PostgreSQL9.6.3-2升级解决其安全漏洞问题
  • 后端的技术设计文档
  • 实例分割论文阅读之:FCN:《Fully Convolutional Networks for Semantica Segmentation》
  • impala与kudu进行集成