页面加载中…
通过率 0% · 提交 0 · 通过 0
链表的每个节点除了 next 指针,还有一个 random 指针,它可以指向链表中任意一个节点,也可以为空。请构造这个链表的深拷贝:新链表由全新的节点组成,next 与 random 都指向新链表里的节点。
这题属于 Hot100 ACM 开放训练中的「链表模拟」方向。建议先看动画确认核心思路,再回到右侧编辑器按标准输入输出写完整代码。
第一行输入整数 n,表示节点个数。接下来 n 行,每行输入两个整数 val 和 r:val 是节点值,r 是 random 指向的节点下标(从 0 开始),为空时是 -1。保证 0≤n≤1000。
按从头到尾的顺序输出新链表的 n 个节点,每行两个整数:节点值,以及 random 指向的节点在新链表中的下标,为空时输出 -1。链表为空时输出 empty。
示例 1
输入示例
5 7 -1 13 0 11 4 10 2 1 0
输出示例
7 -1 13 0 11 4 10 2 1 0
新链表每个节点的值和 random 指向都与原链表对应。
时间限制 2000 ms · 内存限制 256 MB
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。