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.
一般步骤:
1、计算不用进位的位置,使用异或
2、计算进位,算数与操作,计算完后左一一位
3、如此循环
class Solution {
public:
int getSum(int a, int b) {
int carry = 0;
while(b)
{
a = a^ b;
carry = a&b;
b = carry << 1; }
return a;
}
};