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
};
相关推荐
CodeBlossom20 分钟前
javaweb -html -CSS
前端·javascript·html
打小就很皮...1 小时前
HBuilder 发行Android(apk包)全流程指南
前端·javascript·微信小程序
木子.李3471 小时前
排序算法总结(C++)
c++·算法·排序算法
集成显卡2 小时前
PlayWright | 初识微软出品的 WEB 应用自动化测试框架
前端·chrome·测试工具·microsoft·自动化·edge浏览器
闪电麦坤952 小时前
数据结构:递归的种类(Types of Recursion)
数据结构·算法
前端小趴菜053 小时前
React - 组件通信
前端·react.js·前端框架
Amy_cx3 小时前
在表单输入框按回车页面刷新的问题
前端·elementui
Gyoku Mint3 小时前
机器学习×第二卷:概念下篇——她不再只是模仿,而是开始决定怎么靠近你
人工智能·python·算法·机器学习·pandas·ai编程·matplotlib
dancing9993 小时前
cocos3.X的oops框架oops-plugin-excel-to-json改进兼容多表单导出功能
前端·javascript·typescript·游戏程序
纪元A梦3 小时前
分布式拜占庭容错算法——PBFT算法深度解析
java·分布式·算法