描述
给定两个int A和B。编写一个函数返回A+B的值,但不得使用+或其他算数运算符。
测试样例:
1,2返回:3
import java.util.*;
public class UnusualAdd {
public int addAB(int A, int B) {
// write code here
while(B!=0){
int temp=A^B;
B=(A&B)<<1;
A=temp;
}
return A;
}
}
当进位不为 00 时
计算当前 xx 和 yy 的无进位相加结果: x ^ y
计算当前 xx 和 yy 的进位:B= (A& B) << 1
完成本次循环,更新AB