Leetcode的一道題
在二進(jìn)制條件下摔蓝,異或可以實(shí)現(xiàn)沒(méi)有進(jìn)位的求和瘪校。而進(jìn)位可以通過(guò)按位與&來(lái)實(shí)現(xiàn)向挖。
class Solution {
func getSum(_ a: Int, _ b: Int) -> Int {
//change let to var for operation
var (x, y) = (a, b)
repeat {
let carry = x & y
x = x ^ y
y = carry << 1
} while y != 0
return x
}
}