leetcode 371. 两整数之和(python)

不使用运算符 + 和-,计算两整数a 、b之和。

示例:
若 a = 1 ,b = 2,返回 3。

python第一种

class Solution(object):
    def getSum(self, a, b):
        """
        :type a: int
        :type b: int
        :rtype: int
        """
        return sum([a,b])
第二种
class Solution(object):
    def getSum(self, a, b):
        """
        :type a: int
        :type b: int
        :rtype: int
        """
        #位操作
        no_carry_sum=a^b#a与b不进位时的和,恰好与异或性质一样
        carry=(a&b)<<1#a与b的和的进位,恰好是或操作再左移以为
        return sum([no_carry_sum,carry])#前两者之和

 

你可能感兴趣的:(Leetcode)