此题看题解
# Definition for singly-linked list.
# class ListNode:
# def __init__(self, val=0, next=None):
# self.val = val
# self.next = next
class Solution:
def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode]) -> Optional[ListNode]:
dummy=ListNode()
current=dummy
carry=0
while l1 is not None or l2 is not None:
val1=l1.val if l1 is not None else 0
val2=l2.val if l2 is not None else 0
sum=val1+val2+carry
num=sum%10
carry=sum//10
newnode=ListNode(num)
current.next=newnode
current=newnode
if l1 is not None:
l1=l1.next
if l2 is not None:
l2=l2.next
if carry>0:
newnode=ListNode(carry)
current.next=newnode
return dummy.next