当前位置: 首页 > news >正文

网站建设技术协议书全网最好的推广平台

网站建设技术协议书,全网最好的推广平台,网站对联图片,做猎头要用的网站知乎一、题目描述 请实现 copyRandomList 函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 random 指针指向链表中的任意节点或者 null。 示例 1: 输入:head [[7,null],[13,…

一、题目描述

请实现 copyRandomList 函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 random 指针指向链表中的任意节点或者 null。

示例 1:

输入:head = [[7,null],[13,0],[11,4],[10,2],[1,0]]
输出:[[7,null],[13,0],[11,4],[10,2],[1,0]]
示例 2:

输入:head = [[1,1],[2,1]]
输出:[[1,1],[2,1]]
示例 3:

 

输入:head = [[3,null],[3,0],[3,null]]
输出:[[3,null],[3,0],[3,null]]
示例 4:

输入:head = []
输出:[]
解释:给定的链表为空(空指针),因此返回 null。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/fu-za-lian-biao-de-fu-zhi-lcof
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

二、运行结果

三、解题思路

复制复杂链表的难点在于random指针的复制,这里使用一个哈希表来保存每一个院链表中的结点与对应的新链表中的结点之间的对应关系,在第一次遍历原链表进行复制的时候,先不处理每个新链表结点的random指针,只是保存新旧结点之间的对应关系。

简单对原链表复制完成之后(没有处理random指针),所有的结点都已经复制完成,在重头遍历一次链表,处理random指针,而random指针可以根据先前保存的对应关系进行设置,根据原链表中每个结点的random指针设置新链表中每个结点的random指针。

四、AC代码

/*
// Definition for a Node.
class Node {int val;Node next;Node random;public Node(int val) {this.val = val;this.next = null;this.random = null;}
}
*/
class Solution {public Node copyRandomList(Node head) {Node p = head;           // 工作指针,遍历原链表Map<Node, Node> map = new HashMap<>(); //原结点和新结点之间的映射关系Node dummy = new Node(-1);if(head == null) return null;Node tmpNode = new Node(p.val);        //指向新构建的结点dummy.next = tmpNode;   Node rear = tmpNode;     //指向新构建链表的末尾结点map.put(head, tmpNode);while(p.next != null){   //先复制每个结点和next指针,先不管random指针Node pnext = p.next;tmpNode = new Node(pnext.val);rear.next = tmpNode; // 指针后移rear = tmpNode;p = pnext;map.put(pnext, tmpNode); // 保存映射关系}p = head;          // 再重头到尾扫描一遍链表tmpNode = dummy.next;while(p != null){  //构建random指针tmpNode.random = map.get(p.random);p = p.next;tmpNode = tmpNode.next;}return dummy.next;}
}

http://www.ritt.cn/news/14482.html

相关文章:

  • 做app网站有哪些功能中国seo
  • discuz可以做商城网站吗免费访问国外网站的app
  • 阿里巴巴怎么做自己的免费网站市场营销专业就业方向
  • 校园微网站建设方案ppt河南网站优化公司哪家好
  • 科研院所网站建设百度服务
  • 兰溪网站建设如何分析百度指数
  • 宁波网站商城建设seo哪家好
  • 公司网站域名解析谁来做百度推广客服
  • 企业网站pr值低怎么办中国十大营销策划机构
  • 公司找人做网站外贸网站推广seo
  • 做网站的费用记哪个科目营销方式
  • wordpress仿站教学站长之家下载
  • 光泽县规划建设局网站搜索量排行
  • 网站建设花都區网址域名ip查询
  • 深圳网站制作哪家便宜淘宝seo优化是什么意思
  • 三国类的网页游戏排行榜搜索引擎优化行业
  • 平台型网站制作整站优化和单词
  • 12306网站如何做火车票候补佛山网站建设排名
  • 网站建设 辉煌电商seo研究协会网是干什么的
  • 手机 网站 微信 源码营销策略
  • 品牌手机网站建设网络营销推广策略
  • 如何做网站关键词优化软考十大最靠谱it培训机构
  • 网站首页英文好视通视频会议app下载安装
  • php网站开发需要多久crm系统成功案例分享ppt
  • 昆明做网站找启搜网络正规推广平台有哪些
  • 动漫设计好学吗宁波企业网站seo
  • 模仿网站 素材哪里来怎样注册网站
  • 网页开发者工具seo和sem是什么意思啊
  • gta5买房网站建设中揭阳百度seo公司
  • 南昌网站建设哪家好薇如何让百度搜索排名靠前