题目
不使用运算符 和 - ,计算两整数 a 、b 之和。 示例 1: 输入: a = 1, b = 2 输出: 3
示例 2: 输入: a = -2, b = 3 输出: 1
思路
因为题目要求不使用 ,-运算符,所以就想到使用位运算。先得到进位的项,再得到不含进位之和。
解答
代码语言:javascript复制public class Solution {
public int GetSum(int a, int b)
{
int carry = (a & b) << 1;//获得进位项
int Initial = a ^ b;//获得不含进位之和
if (carry == 0)
return Initial;
else
return GetSum(Initial,carry);
}
}