求两整数之和
不使用运算符 + 和 - ,计算两整数 a 、b 之和。
示例 1:
输入: a = 1, b = 2
输出: 3
示例 2:
输入: a = -2, b = 3
输出: 1
int getSum(int a, int b) {
int t=0;
if(a<0&&b>0)
{
t=abs(a);
while(t--)
{
b--;
}
return b;
}else if((a>0&&b<0)||(a<0&&b<0))
{
t=abs(b);
while(t--)
{
a--;
}
return a;
}else
{
while(a--)
b++;
return b;
}
}
int getSum(int a,int b)
{
int y;
while((a&b)!=0)
{
y=a^b;
a=(a&b)<<1;
b=y;
}
return a|b;
}
其他练习及后续优化:https://github.com/Mjianjianjiao/Practice_LeetCode/blob/master/getSum.c