JZ48-不用加减乘除做加法
不用加减乘除做加法
https://www.nowcoder.com/practice/59ac416b4b944300b617d4f7f111b215?tpId=13&tags=&title=&diffculty=0&judgeStatus=0&rp=1&tab=answerKey
class Solution {
public int Add(int num1, int num2) {
int result = 0;
int carry = 0;
do {
result = num1 ^ num2; //不带进位的加法
carry = (num1 & num2) << 1; //进位
num1 = result;
num2 = carry;
} while (carry != 0); // 进位不为0则继续执行加法处理进位
return result;
}
} 