import java.util.*;
public class UnusualAdd {
public int addAB(int A, int B) {
int C = 0;
while (B != 0) {
C = A ^ B;
B = (A & B) << 1;
A = C;
}
return A;
}
}
思路:不能用 + ,那么就要考虑二进制加的本质,是 无相位相加和位运算
1.当不考虑 位运算时,a + b = a^ b
2.如 无 进位 时 直接返回,有位运算 << 进位 1 ,赋值后重新计算即可



京公网安备 11010502036488号