每日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;
    }
};
相关推荐
阿Y加油吧10 小时前
二刷 LeetCode:215. 数组中的第 K 个最大元素 & 347. 前 K 个高频元素 复盘笔记
笔记·leetcode·排序算法
_F_y10 小时前
仿RabbitMQ实现消息队列-服务端核心模块实现(3)
c++·算法·rabbitmq
m0_6294947310 小时前
LeetCode 热题 100-----15.轮转数组
数据结构·算法·leetcode
AI科技星10 小时前
从180°旋转定值π、e论证时空宿命与未来可预测性—全域数学视角
人工智能·算法·机器学习·数学建模·数据挖掘
WL_Aurora10 小时前
Python 算法基础篇之栈和队列
python·算法
橙子也要努力变强10 小时前
进程与信号
linux·服务器·c++
艺术电影节11 小时前
惊喜映后 | 伍迪·艾伦经典修复澳门首映
算法·推荐算法·电视
我不是懒洋洋11 小时前
手写一个B+树:从原理到数据库索引实战
c语言·c++·经验分享
奶茶树11 小时前
【STL/数据结构】哈希表和unordered系列容器的封装
开发语言·c++·散列表
Brilliantwxx11 小时前
【C++】初步认识STL(3)
开发语言·c++·笔记·算法