← 返回题库
中级

复制带随机指针的链表

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

def solve():
    def copyRandomList(____):
        if not head:
            return None
        old_to_new = {}
        curr = head
        while curr:
            old_to_new[curr] = Node(____)
            curr = curr.next
        curr = head
        while curr:
            old_to_new[curr].next = old_to_new.get(____)
            old_to_new[curr].random = old_to_new.get(____)
            curr = curr.next
        return old_to_new[head]
    n1 = Node(____)
    n2 = Node(____)
    n3 = Node(____)
    n4 = Node(____)
    n5 = Node(____)
    n1.next = n2
    n2.next = n3
    n3.next = n4
    n4.next = n5
    n2.random = n1
    n3.random = n5
    n4.random = n3
    n5.random = n1
    result = copyRandomList(____)
    print(____)

示例

输入
solve()
期望输出
7
Python 代码 🔒 登录后使用
🔒

登录后即可练习

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