首页 > 代码库 > LeetCode 371. Sum of Two Integers

LeetCode 371. Sum of Two Integers

Calculate the sum of two integers a and b, but you are not allowed to use the operator + and -.

Example:
Given a = 1 and b = 2, return 3.

题目要求:计算两个整型的和,但是不能用+和-

我们知道a+b为((a&b)<<1)+(a^b),因此可以用递归的方法

 

class Solution {public:    int getSum(int a, int b) {        if (a == 0)return b;        if (b == 0)return a;        return getSum((a&b)<<1,a^b);    }};

 

LeetCode 371. Sum of Two Integers