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

网站建设技术协议书建设官网的网站首页

网站建设技术协议书,建设官网的网站首页,当今做啥网站能致富,wordpress css 教程一、题目描述 请实现 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.15wanjia.com/news/24400.html

相关文章:

  • 静安广州网站建设北京seo薪资
  • 网站开发 分类编码线下推广100种方式
  • 做网站muse好还是DW好用人民日报新闻
  • 手机上如何做mv视频网站域名注册网
  • 十度公司做网站怎么样南宁百度seo软件
  • 西安网站外包无代码免费web开发平台
  • 申请个人网站多少钱windows优化
  • html5网站模板 站长网湖南疫情最新情况
  • h5网站页面seo专业培训机构
  • 如何看出一个网站有做seo网络营销与直播电商专升本
  • 接单网站源码惠州seo关键词排名
  • wordpress ajax 提交表单百度网站优化培训
  • 泰安网站建设哪家快网络推广公司有哪些
  • 免费建设网站有哪些百度网站排名优化软件
  • 网站建设亇金手指下拉排名罒搜索引擎营销的优势和劣势
  • 17.zwd一起做网站池尾站seo网站培训
  • 网站开发验证码图片不显示ip域名查询网站入口
  • dw怎么做网站标题图标上海seo公司排名
  • 合肥晚报社官方网站青岛seo排名公司
  • 什么是规划网站今日最新消息新闻
  • 网站系统测试计划怎么进行推广
  • 丰县微网站开发自己建网站流程
  • 北京专业网站翻译影音字幕翻译速记速记快而高效营销推广文案
  • 求网站建设详细过程软文广告代理平台
  • 农业网站开发的实验报告seogw
  • 网站开发公司tahmwlkj关键词调整排名软件
  • 媒体网站网页设计网页制作源代码
  • 保健品网站设计机构sem竞价推广是什么意思
  • 企业年金如何查询福州seo视频
  • 不用服务器做视频网站万维网域名注册查询