我是编程新手,正在编写LeetCode#21合并两个排序列表.
举个例子: 输入:List1=[1,2,4],List2=[1,3,4] 输出:[1,1,2,3,4,4]
此问题的常见解决方案是:
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
class Solution:
def mergeTwoLists(self, list1: ListNode, list2: ListNode) -> ListNode:
dummy = ListNode()
tail = dummy
while list1 and list2:
if list1.val < list2.val:
tail.next = list1
list1 = list1.next
else:
tail.next = list2
list2 = list2.next
tail = tail.next
if list1:
tail.next = list1
elif list2:
tail.next = list2
return dummy.next
我搞混了最后一行:返回哑巴.下一行
它不应该简单地返回虚拟 node 的下一个 node 吗? 这将如何返回整个名单?