class Solution { public: intgetSum(int a, int b){ int sum = 0; int carry = 0; while(b) { sum = a ^ b; carry = a & b; a = sum; b = carry << 1; } return sum;; } };
Version 2
1 2 3 4 5 6
class Solution { public: intgetSum(int a, int b){ return b == 0 ? a : getSum(a ^ b, (a & b) << 1); } };