剑指 Offer 第65题:不用加减乘除做加法

1、前言

题目描述

2、思路

3、代码

 public int add(int a, int b) {
        int sum = a, carry = b;

        while (carry != 0) {
            int temp = sum;
            sum = temp ^ carry;           // a ^ b
            carry = (temp & carry) << 1;  // (a & b) << 1
        }

        return sum;
    }

你可能感兴趣的:(剑指 Offer 第65题:不用加减乘除做加法)