AcWing
  • 首页
  • 活动
  • 题库
  • 竞赛
  • 应用
  • 更多
    • 题解
    • 分享
    • 商店
    • 吐槽
  • App
  • 登录/注册

AcWing 48. 【Go】复杂链表的复刻    原题链接    中等

作者: 作者的头像   诶嘿- ,  2022-09-24 06:13:53 ,  所有人可见 ,  阅读 93


0


题目描述

哈希表方法

样例

func copyRandomList(head *ListNode) *ListNode {
    r := make(map[*ListNode]*ListNode)
    t := &ListNode{Val: 0, Next: nil, Random: nil}
    s := head
    ans := t
    for head != nil {
        t.Next = &ListNode{Val: head.Val, Next: nil, Random: nil}
        t = t.Next
        r[head] = t
        head = head.Next
    }
    for s != nil {
        if s.Random != nil {
            r[s].Random = r[s.Random]

        }
        s = s.Next
    }
    return ans.Next
}

0 评论

你确定删除吗?
1024
x

© 2018-2023 AcWing 版权所有  |  京ICP备2021015969号-2
用户协议  |  隐私政策  |  常见问题  |  联系我们
AcWing
请输入登录信息
更多登录方式: 微信图标 qq图标 qq图标
请输入绑定的邮箱地址
请输入注册信息