题解 | #不用加减乘除做加法#
不用加减乘除做加法
https://www.nowcoder.com/practice/59ac416b4b944300b617d4f7f111b215
function Add(num1, num2) { // 第一步:使用按位异或计算无进位的和 // 第二步:使用按位与运算计算进位,并使用左移计算完成进位 // 第三步:将无进位的和作为新的num1,进位作为新的num2重复上述步骤,直到进位为0,此时无进位和就是最终的结果。 while (num2) { // 无进位和 let res1 = num1 ^ num2; // 进位 let res2 = (num1 & num2) << 1; num1 = res1; num2 = res2; } return num1; } module.exports = { Add: Add, };