赞
踩
不使用运算符 + 和-,计算两整数a 、b之和。
示例:
若 a = 1 ,b = 2,返回 3。
class Solution {
func getSum(_ a: Int, _ b: Int) -> Int {
let result = a ^ b
// 因为进位后是进到了前一位, 所以: 左移
let carray = (a & b) << 1
if carray == 0 {
return result
} else {
// 递归计算result与进位的和
return getSum(result, carray)
}
}
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。