解题思路:
新建一个链表,head为表头指针。当两个链表非空时,若l1的值小于l2中的值则将l1中的值写入当前p链表的指针中,否则写入l2中的值,指针继续向下。最后当有一个链表为空直接将p的最后一个指针指向那个非空的链表。
若两个链表里有一个为空则返回非空的那个链表,
def mergeTwoLists(l1, l2):
p = ListNode(-1)
head = p
while l1 and l2:
if l1.val <= l2.val:
p.next = l1
l1 = l1.next
else:
p.next = l2
l2 = l2.next
p = p.next
p.next = l1 if l1 else l2
return head.next