怎么说,卡在 d1的最后一位,应该先给 d1 用 ListNode 赋值,然后再给 d1 移位,这样就能保证 d1 的最后一位有值
class ListNode:
def __init__(self, x=None, next=None):
self.val = x
self.next = None
l1 = ListNode(2)
head = l1
head.next = ListNode(4)
head = head.next
head.next = ListNode(3)
l2 = ListNode(5)
head = l2
head.next = ListNode(6)
head = head.next
head.next = ListNode(4)
a = 0
d1 = ListNode(None)
head = d1
while l1 and l2:
d1.next = ListNode(l1.val + l2.val + a)
a = 0
if d1.next.val > 9:
a = 1
d1.next.val = 0
d1 = d1.next
l1 = l1.next
l2 = l2.next
if l1 == None and l2:
d1.next = ListNode(l2.val + a)
d1.next.next = l2.next
elif l2 == None and l1:
d1.next = ListNode(l1.val + a)
d1.next.next = l1.next
else:
d1 = ListNode(a)
head = head.next
while head != None:
print(head.val)
head = head.next