每日OJ题_位运算⑤_力扣371. 两整数之和

目录

[力扣371. 两整数之和](#力扣371. 两整数之和)

解析代码


力扣371. 两整数之和

371. 两整数之和

难度 简单

给你两个整数 ab不使用 运算符 +- ,计算并返回两整数之和。

示例 1:

复制代码
输入:a = 1, b = 2
输出:3

示例 2:

复制代码
输入:a = 2, b = 3
输出:5

提示:

  • -1000 <= a, b <= 1000
cpp 复制代码
class Solution {
public:
    int getSum(int a, int b) {

    }
};

解析代码

此题知识点就是异或运算为无进位相加,异或后想办法找到进位就行了,进位就是两个数按位与然后左移一位,重复相加至进位为0即为答案。

cpp 复制代码
class Solution {
public:
    int getSum(int a, int b) {
        while (b != 0)
        {
            unsigned int carry = (unsigned int)(a & b) << 1; // 进位
            a = a ^ b; // 无进位相加
            b = carry; // 进位不为0的话就一直加,如a已经是a^b的结果,再^b,加进位
        }
        return a;
    }
};
相关推荐
￰meteor12 小时前
【移动语义与移动构造】
c++
陆水A12 小时前
运输时效预测模型:静态路由时效的计算与验证
大数据·人工智能·算法·spark·数据库开发·etl工程师
电科一班林耿超12 小时前
机器学习大师课 第 6 课:随机森林 —— 工业界最能打的 “万能算法“
算法·随机森林·机器学习
驼同学.12 小时前
【求职季】LeetCode Hot 100 渐进式扫盲手册(Python版)
python·算法·leetcode
li星野12 小时前
二分查找六题通关:从标准模板到旋转数组(Python + C++)
java·c++·python
宵时待雨13 小时前
优选算法专题6:模拟
数据结构·c++·算法·leetcode·职场和发展
Liangwei Lin13 小时前
LeetCode 35. 搜索插入位置
数据结构·算法·leetcode
数智工坊13 小时前
【经典RL算法】Q-Learning:强化学习的里程碑——从理论到收敛证明的完整解析
论文阅读·人工智能·深度学习·算法·transformer
H Journey13 小时前
C++性能优化
c++·性能优化
叼烟扛炮13 小时前
C++ 知识点19 匿名对象
开发语言·c++·算法·匿名对象