第65题 – 不用加减乘除做加法

作者: 周伟林 分类: 剑指offer 发布时间: 2018-05-13 12:51

题目描述

写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。

解题思路

& 得到进位。
^ 得到求和的值。

JavaScript实现

function Add(num1, num2)
{
    let sum, carry;
    do{
        sum = num1 ^ num2;
        carry = (num1 & num2) << 1;    // 进位
        num1 = sum;
        num2 = carry;
    }while(num2 !== 0);
    return num1;
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注