371. 两整数之和
考点
- 异或技巧
题解
1 | class Solution { |
时间复杂度:存在异议,但个人认为不会超过32次
空间复杂度:\(O\left( 1 \right)\)
思路
记住这个位运算小技巧就好了,假设有a
和b
两个整数,不限正负
- \(a\oplus
b\)可得到
a
与b
的无进位加法结果 - \(\left( a\&b \right)
<<1\)可得到
a
与b
的加法进位
由于进位可能会溢出,比如-1 + 1
这组数据;所以需用无符号类型保存进位