问题链接:https://leetcode.com/problems/sum-of-two-integers/
求两数和,不用加法。
熟悉计算机组成原理的就知道硬件层面的加法是通过位运算和移位来实现的。这里相当于用软件取模仿硬件行为
class Solution {
public int getSum(int a, int b) {
if(b==0)
return a;
int sum=a^b;
int carry=a & b;
return getSum(sum,carry<<1);
}
}