给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。
注意:
num1 和num2 的长度都小于 5100.
num1 和num2 都只包含数字 0-9.
num1 和num2 都不包含任何前导零。
你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。
思路:
字符串相加与二进制相加同理。区别就是一个逢十进一,一个逢二进一。
class Solution(object):
def addStrings(self, num1, num2):
"""
:type num1: str
:type num2: str
:rtype: str
"""
result,carry,val = '',0,0
for i in range(max(len(num1),len(num2))):
val = carry
if i<len(num1):
val+=int(num1[-(i+1)])
if i<len(num2):
val+=int(num2[-(i+1)])
carry,val = val//10,val%10
result+=str(val)
if carry!=0:
result+=str(1)
return result[::-1]