Leetcode 371. Sum of Two Integers

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

1. Description

Sum of Two Integers

2. Solution

  • Version 1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Solution {
public:
int getSum(int a, int b) {
int sum = 0;
int carry = 0;
while(b)
{
sum = a ^ b;
carry = a & b;
a = sum;
b = carry << 1;
}
return sum;;
}
};
  • Version 2
1
2
3
4
5
6
class Solution {
public:
int getSum(int a, int b) {
return b == 0 ? a : getSum(a ^ b, (a & b) << 1);
}
};

Reference

  1. https://leetcode.com/problems/sum-of-two-integers/description/
如果有收获,可以请我喝杯咖啡!