问题描述
给出两个整数 a 和 b , 求他们的和。
显然你可以直接 return a b,但是你是否可以挑战一下不这样做?
提示
两数异或得到无进位的加法,两数相与并且左移一位表示进位.
详细代码:
代码语言:javascript复制public int plus(int a, int b){
while(b != 0){
int ta = a^b;
int tb = (a&b)<<1;
a = ta;
b = tb;
}
return a;
}