剑指 Offer 65. 不用加减乘除做加法

Posted ai52learn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指 Offer 65. 不用加减乘除做加法相关的知识,希望对你有一定的参考价值。

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

 

示例:

输入: a = 1, b = 1
输出: 2
 

提示:

a, b 均可能是负数或 0
结果不会溢出 32 位整数

class Solution {
public:
    int add(int a, int b) {
        if(b==0) return a;
        return add(a^b, (unsigned int)(a&b)<<1);   //C++中负数不支持左移位,因为结果是不定的
    }
};


 

以上是关于剑指 Offer 65. 不用加减乘除做加法的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode-剑指Offer 65-不用加减乘除做加法

剑指 Offer 65. 不用加减乘除做加法

LeetCode(剑指 Offer)- 65. 不用加减乘除做加法

LeetCode(剑指 Offer)- 65. 不用加减乘除做加法

剑指 Offer 65. 不用加减乘除做加法

剑指 Offer 65. 不用加减乘除做加法