371. Sum of Two Integers(位运算)

来源:互联网 发布:网络分层结构模型 编辑:程序博客网 时间:2024/04/28 22:00

Calculate the sum of two integers a and b, but you are not allowed to use the operator + and -.

Example:
Given a = 1 and b = 2, return 3.

Credits:
Special thanks to @fujiaozhu for adding this problem and creating all test cases.

Subscribe to see which companies asked this question




题解:

求两个数的和,不能用加减法。显然是位运算。ac代码:

class Solution {
public:
    int getSum(int a, int b) {
        return a & b ? getSum((a & b) << 1, a ^ b) : a | b;
    }
};

0 0
原创粉丝点击