千家信息网

leetcode如何实现复制带随机指针的链表

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,小编给大家分享一下leetcode如何实现复制带随机指针的链表,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!给定一个链表,
千家信息网最后更新 2026年11月03日leetcode如何实现复制带随机指针的链表

小编给大家分享一下leetcode如何实现复制带随机指针的链表,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。

要求返回这个链表的深拷贝。

示例:

输入:

{"$id":"1","next":{"$id":"2","next":null,"random":{"$ref":"2"},"val":2},"random":{"$ref":"2"},"val":1}

解释:
节点 1 的值是 1,它的下一个指针和随机指针都指向节点 2 。
节点 2 的值是 2,它的下一个指针指向 null,随机指针指向它自己。

提示:

  1. 你必须返回给定头的拷贝作为对克隆列表的引用。

解题技巧:

1,因为random指针的存在,所以copy的时候如何定位random是个问题,所以简单方法在原链表每个位置后面插入一个元素。

2,由于random可能指向前面的指针,所以复制完之前不能拆解

3,注意边界条件,对于指针类题目,一定要判断空情况

/*// Definition for a Node.class Node {public:    int val;    Node* next;    Node* random;
Node() {}
Node(int _val, Node* _next, Node* _random) { val = _val; next = _next; random = _random; }};*/class Solution {public: Node* copyRandomList(Node* head) { Node* h=NULL; Node* t=NULL; Node* cur=NULL; cur=head; while(cur!=NULL){ t=cur->next; cur->next=new Node(cur->val,t,NULL); cur=t; } cur=head; if (cur==NULL){ return NULL; } h=cur->next; t=h; while(cur!=NULL){ if (cur->random!=NULL){ t->random=cur->random->next; } cur=t->next; if (cur!=NULL){ t=cur->next; } } cur=head; h=cur->next; t=h; while(cur!=NULL){ cur->next=t->next; cur=cur->next; if (cur!=NULL){ t->next=cur->next; t=t->next; } }
return h; }};

以上是"leetcode如何实现复制带随机指针的链表"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

指针 节点 指向 篇文章 内容 拷贝 不怎么 位置 元素 大部分 情况 技巧 方法 时候 更多 条件 知识 示例 行业 资讯 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网黑科技 互联网科技官网 金融科技还是互联网 互联网科技开发公司 北京互联网科技有限公司 万易互联网科技 互联网未来科技 云电互联网科技 广州互联网络科技有限公司 盛创互联网科技有限公司 智腾互联网科技有限公司 成都互联网科技公司工作好不好 佛山市翊博互联网络科技有限公司 洛阳共同富裕互联网科技有限公司 互联网在线教育科技创业 滨湖区互联网智能科技产品有哪些 江苏苏星互联网科技有限公司 上海创道互联网络科技有限公司 互联网科技融合创新 互联网时代高科技布局 互联网科技巨头监管 互联网科技上市公司 互联网科技创新企业排名 银川新华互联网科技学校地址 科技与互联网的利与弊 广州恒生互联网科技有限 玉溪互联网科技怎么选 互联网科技研发水平 皮皮虾互联网科技有限公司 珠海东科互联网科技有限公司
0