题目描述
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
思路
代码
class Solution:
def mergeTwolists(self, l1:ListNode, l2:ListNode)->ListNode:
cur = dum = ListNode(0)
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
cur.next = l1 if l1 else l2
return dum.next
复杂度
时间复杂度 O(M+N): M, N分别为链表 l1,l2的长度,合并操作需遍历两链表。
空间复杂度 O(1): 节点引用 dum , cur 使用常数大小的额外空间。