两个输入链表都是有序的,因此先创建一个val维-1的链表头部,然后根据l1和l2的大小关系上下横跳即可:
class Solution:
def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:
prehead=ListNode(-1)
pr=prehead
while l1 and l2:
if l1.val<=l2.val:
pr.next=l1
l1=l1.next
else:
pr.next=l2
l2=l2.next
pr=pr.next
pr.next=l1 if l1 is not None else l2
return prehead.next
注意,最后要把next指向维进行比较的节点。