# 给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。
# 请你将两个数相加,并以相同形式返回一个表示和的链表。
# 你可以假设除了数字0之外,这两个数都不会以0开头。
# 示例 1:
# 输入:l1 = [2,4,3], l2 = [5,6,4]
# 输出:[7,0,8]
# 解释:342 + 465 = 807
# 示例 2:
# 输入:l1 = [0], l2 = [0]
# 输出:[0]
# 示例 3:
# 输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]
# 输出:[8,9,9,9,0,0,0,1]
class Solution(object):
def addTwoNumbers(self, l1, l2):
"""
:type l1: ListNode
:type l2: ListNode
:rtype: ListNode
"""
str1 = ''
str2 = ''
for i in range(len(l1), 0, -1):
str1 += str(l1[i - 1])
for i in range(len(l2), 0, -1):
str2 += str(l2[i - 1])
num = int(str1) + int(str2)
l3 = []
for i in str(num):
l3.insert(0, int(i))
print(l3)
if __name__ == '__main__':
solution = Solution
solution.addTwoNumbers(solution, [2, 4, 3], [5, 6, 4])
solution.addTwoNumbers(solution, [0], [0])
solution.addTwoNumbers(solution, [9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9])
输出结果:
[7, 0, 8]
[0]
[8, 9, 9, 9, 0, 0, 0, 1]