题解 | #不用加减乘除做加法#

不用加减乘除做加法

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,
};

全部评论

相关推荐

这不纯纯作弊了吗😢😢😢
编程界菜鸡:信这个的这辈子有了,这智商你靠啥都没用
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务