← 返回题库
中级

排序链表

未完成
中级参考 代码结构已给出,请填写 ____ 处
class ListNode:
    def __init__(____):
        self.val = val
        self.next = next

def solve():
    def sortList(____):
        if not head or not head.next:
            return head
        slow, fast = head, head.next
        while fast and fast.next:
            slow = slow.next
            fast = fast.next.next
        mid = slow.next
        slow.next = None
        left = sortList(____)
        right = sortList(____)
        dummy = ListNode()
        curr = dummy
        while left and right:
            if left.val < right.val:
                curr.next = left
                left = left.next
            else:
                curr.next = right
                right = right.next
            curr = curr.next
        curr.next = left if left else right
        return dummy.next
    head = ListNode(____, ListNode(____, ListNode(____, ListNode(____))))
    result = sortList(____)
    vals = []
    while result:
        vals.append(____)
        result = result.next
    print(____)

示例

输入
solve()
期望输出
[1, 2, 3, 4]
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码