本文最后更新于:2020年11月18日 下午
写一个函数,求两个整数之和,要求在函数体内不得使用”+”,”-“,”*”,”/“四则运算符号。
示例:
输入:a=1, b=1
输出:2
提示:
- a,b均可能是负数或0
- 结果不会溢出32位整数
class Solution:
def add(self, a, b):
解题思路:
本题考察对位运算的灵活使用,即使用位运算实现加法。
设两数字的
class Solution:
def add(self, a, b):
x = 0xffffffff
a, b = a & x, b & x
whlie b != 0:
a, b = (a ^ b), (a & b) << 1 & x
return a if a <= 0x7fffffff else ~(a ^ x)
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!