Skip to content
本页目录

两整数之和

题目描述

https://leetcode.cn/problems/sum-of-two-integers

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

示例 1:

输入:a = 1, b = 2
输出:3

示例 2:

输入:a = 2, b = 3
输出:5

提示:

  • -1000 <= a, b <= 1000

来源:力扣(LeetCode) 链接: 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路

a ^ b 计算本位和,(a & b ) << 1 计算进位。

csharp
public class Solution {
    public int GetSum(int a, int b) {
        while(b != 0){
            int sum = a ^ b;
            int carry = (a & b) << 1;
            a = sum;
            b = carry;
        }
        return a;
    }
}

Released under the MIT License.