← 返回题库
初级

合并两个有序链表

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
class ListNode:
    def __init__(self, val=0, next=None):
        self.val = val
        self.next = next

def solve():
    def mergeTwoLists(l1, l2):
        if not l1:
            return l2
        if not l2:
            return l1
        if l1.val < l2.val:
            l1.next = mergeTwoLists(l1.next, l2)
            return l1
        else:
            l2.next = mergeTwoLists(l1, l2.next)
            return l2
    l1 = ListNode(1, ListNode(2, ListNode(4)))
    l2 = ListNode(1, ListNode(3, ListNode(4)))
    result = mergeTwoLists(l1, l2)
    vals = []
    while result:
        vals.append(result.val)
        result = result.next
    print(vals)

示例

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

登录后即可练习

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