class Node:
def __init__(self, data):
self.data= data
self.next = None
class Solution:
def addTowNumbers(self, l1: Node, l2: Node) ->Node:
prenode = Node(0)
lastnode = prenode
val = 0
while val or l1 or l2:
val, cur = divmod(val + (l1.data if l1 else 0) + (l2.data if l2 else 0), 10)
lastnode.next = Node(cur)
lastnode = lastnode.next
l1 = l1.next if l1 else None
l2 = l2.next if l2 else None
return prenode.next
def generateList(l: list) -> Node:
prenode = Node(0)
lastnode = prenode
for val in l:
lastnode.next = Node(val)
lastnode = lastnode.next
return prenode.next
def printList(l: Node):
result = []
while l:
print(l.data,type(l.data))
result.append(l.data)
l = l.next
return result
if __name__ == '__main__':
l1 = generateList([1, 5, 8])
l2 = generateList([9, 1, 2, 9])
s = Solution()
sum = s.addTowNumbers(l1, l2)
result = printList(sum)
print(result)
来源:CSDN
作者:LeechengLove
链接:https://blog.csdn.net/LeechengLove/article/details/104582409