leetcode-位运算

位运算

371. 两整数之和

题目

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

示例 1:
输入: a = 1, b = 2 输出: 3
示例 2:
输入: a = 2, b = 3 输出: 5

提示:

  • -1000 <= a, b <= 1000
题解
javascript 复制代码
/**
 * @param {number} a
 * @param {number} b
 * @return {number}
 */
var getSum = function (a, b) {
    // 示例1 2 + 2  10  10
    // 示例2 1 + 2  01 10
    while (b !== 0) {
        /**
         * 有值就是有进位
         * 1. & 两个位都为1时,结果才为1
         * 2. << 左移进位
         */
        const carry = (a & b) << 1;
        /**
         * 1. ^ 两个位相同为0,不同为1
         */
        a = a ^ b; // 示例1 00 示例2 11
        b = carry; // 示例1 100 示例2 00
    }
    return a; // 示例1 100 示例2 11
};
相关推荐
Predestination王瀞潞6 分钟前
基础算法(Num012)
c语言·开发语言·算法·排序算法
qianmo202118 分钟前
基于deepseek学习三角函数相关
学习·算法
YA10JUN19 分钟前
C++版搜索与图论算法
c++·算法·图论
Boop_wu21 分钟前
[数据结构] 排序
数据结构·算法·排序算法
圆肖33 分钟前
[陇剑杯 2021]简单日志分析(问3)
前端·经验分享·github
Tisfy35 分钟前
LeetCode 1039.多边形三角剖分的最低得分:记忆化搜索(深度优先搜索)
算法·leetcode·深度优先·记忆化搜索
YuTaoShao36 分钟前
【LeetCode 每日一题】1470. 重新排列数组——(解法一)构造数组
数据结构·算法·leetcode
宝耶1 小时前
qqqqqqq
数据结构·算法·排序算法
王嘉俊9251 小时前
Django 入门:快速构建 Python Web 应用的强大框架
前端·后端·python·django·web·开发·入门
IT_陈寒2 小时前
Redis性能翻倍的5个冷门技巧,90%的开发者从不知道第3点!
前端·人工智能·后端