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.
class Solution {
public:
int getSum(int a, int b) {
while (b){
int x = a ^ b;//忽略进位,先将各位相加
int y = (a & b) << 1;//计算出进位,并将进位左移一位,以便后续相加
a = x; b = y;//将进位左移的结果和忽略进位的和相加
}
return a;
}
};