371. Sum-of-Two-Integers

difficulty: Medium

section pre{ background-color: #eee; border: 1px solid #ddd; padding:10px; border-radius: 5px; }

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

Example 1:

Input: a = 1, b = 2
Output: 3

Example 2:

Input: a = -2, b = 3
Output: 1

Method One

参见 位操作的笔记部分。

class Solution {
    public int getSum(int a, int b) {
        while(b != 0){
            int carry = (a&b) << 1;
            a ^= b;
            b = carry;
        }
        return a;
    }
}

Last updated

Was this helpful?