题目
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
这道题仍然是迭代的思想,即可以创建一个新的链表,然后逐一去比较原来链表的值,谁小,谁就添加到新链表里。值得注意的是,这两个链表长度不一定一样,所以要讨论一下长度的问题。代码很简单,实现结果如下:
class Solution:
def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:
l3 = ListNode(0)
cur = l3
while l1 and l2:
if l1.val < l2.val:
cur.next = l1
l1 = l1.next
else:
cur.next = l2
l2 = l2.next
cur = cur.next
if l1:
cur.next = l1
else:
cur.next = l2
return l3.next