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

day16 leetcode-hot100-32(链表11)

138. 随机链表的复制 - 力扣(LeetCode)

1.哈希表

思路

第一次遍历创建新节点并将原节点与新节点同时放入哈希表中

第二次遍历为新节点加入next与random

具体代码
/*
// 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) {HashMap<Node,Node> map = new HashMap<>();Node cur = head;while(cur!=null){map.put(cur,new Node(cur.val));cur=cur.next;}cur=head;while(cur!=null){Node n = map.get(cur);n.next = map.get(cur.next);n.random = map.get(cur.random);cur=cur.next;}return map.get(head);}
}

http://www.dtcms.com/a/225189.html

相关文章:

  • AI视频“入驻”手机,多模态成智能终端的新战场
  • DQN和DDQN(进阶版)
  • maven中的maven-antrun-plugin插件详解
  • comfyui利用 SkyReels-V2直接生成长视频本地部署问题总结 1
  • 设计模式——模版方法设计模式(行为型)
  • 开源库免费API服务平台 ALLBEAPI
  • Notepad++找回自动暂存的文件
  • 【C/C++】面试常考题目
  • robot_lab学习笔记【MDP综述】
  • 学习BI---BI看板的生命周期
  • 鸿蒙HarmonyOS —(cordova)研发方案详解
  • 仓颉鸿蒙开发:制作底部标签栏
  • 鸿蒙OS基于UniApp的WebRTC视频会议系统实践:从0到1的HarmonyOS适配之路#三方框架 #Uniapp
  • Spring Boot 中的 Web 应用与 Reactive Web 应用
  • React 路由管理与动态路由配置实战
  • Java中的JSONObject详解:从基础到高级应用
  • 【数据结构】图的存储(十字链表)
  • 什么是子查询?相关子查询的性能问题?
  • 高效Excel数据净化工具:一键清除不可见字符与格式残留
  • 批量导出CAD属性块信息生成到excel——CAD C#二次开发(插件实现)
  • 重读《人件》Peopleware -(14)Ⅱ 办公环境 Ⅶ 把门带上
  • 【解决】【亲测下载obsidian可行】打不开github.com 或者 加速访问 github
  • 从零开始的git学习
  • [ElasticSearch] RestAPI
  • Spring Boot,注解,@ConfigurationProperties
  • OpenFeign和Gateway集成Sentinel实现服务降级
  • 网络协议的原理及应用层
  • Vue-2-前端框架Vue基础入门之二
  • 《深度解构现代云原生微服务架构的七大支柱》
  • 儿童节快乐,聊聊数字的规律和同余原理