免费网站建设魔坊玉田县建设工程招标网站

张小明 2026/1/13 0:50:27
免费网站建设魔坊,玉田县建设工程招标网站,莱芜网站设计,怎样做网站个人简介题目难度: 中等 原题链接 今天继续更新 Leetcode 的剑指 Offer#xff08;专项突击版#xff09;系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 请实现 copyRandomList 函数#xff0c;复制一个复杂链表。在复…题目难度: 中等原题链接今天继续更新 Leetcode 的剑指 Offer专项突击版系列, 大家在公众号算法精选里回复剑指offer2就能看到该系列当前连载的所有文章了, 记得关注哦~题目描述请实现 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。提示-10000 Node.val 10000Node.random 为空null或指向链表中的节点。节点数目不超过 1000 。题目思考如何处理 random 指针?解决方案思路如果只有 next 指针的话很简单, 我们只需要对每个节点新建一个相同值的节点, 并保持指向关系, 逐个遍历过去即可现在多了个 random 指针, 想要定位新的指向的节点, 一个比较自然的想法就是额外维护一个老节点到新节点的映射关系, 可以用字典来实现第一遍遍历, 就只关注 next 部分, 并建立好映射关系第二遍遍历, 考虑 random 部分, 找到对应的新链表的节点, 然后当前节点的 random 指针指向它即可复杂度时间复杂度O(N)每个节点只需要遍历两次空间复杂度O(N)额外需要一个字典代码classSolution:defcopyRandomList(self,head:Node)-Node:ifnothead:returnNonemaps{}# 第一遍遍历, 建立新的链表, 以及老节点到新节点的映射关系copyHeadNode(head.val)origin,copyhead,copyHead maps[origin]copywhileorigin.next:# 新建下一个节点, 并建立next关系copy.nextNode(origin.next.val)originorigin.nextcopycopy.nextmaps[origin]copy# 第二遍遍历, 处理random指针部分origin,copyhead,copyHeadwhileorigin:iforigin.random:# 如果老节点random指针指向非空的话, 就将当前新节点也指向随机节点对应的新节点copy.randommaps[origin.random]originorigin.nextcopycopy.nextreturncopyHead大家可以在下面这些地方找到我~我的 GitHub我的 Leetcode我的 CSDN我的知乎专栏我的头条号我的牛客网博客我的公众号: 算法精选, 欢迎大家扫码关注~
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

手机网站需要什么吴忠网站建设多少钱

终极指南:如何在MacBook Pro Touch Bar上安装和玩吃豆人游戏 【免费下载链接】pac-bar Pac-Man for the MacBook Pro Touch Bar 项目地址: https://gitcode.com/gh_mirrors/pa/pac-bar 想要在MacBook Pro的Touch Bar上体验经典吃豆人游戏的乐趣吗&#xff1f…

张小明 2026/1/12 0:14:36 网站建设

做韦恩图网站使用wordpress函数

HTML5 Video 与其他视频嵌入技术的区别 HTML5 Video 与其他视频嵌入技术(如 Flash)的主要区别在于: 无需插件:HTML5 Video 不依赖于任何第三方插件,而 Flash 需要安装 Adobe Flash Player 插件。 跨平台性&#xff1a…

张小明 2026/1/9 10:33:08 网站建设

包装设计网站欣赏c#网站购物车怎么做

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 🍊个人信条:格物致知,完整Matlab代码获取及仿…

张小明 2026/1/10 15:30:51 网站建设

分子信标探针在线设计网站网件路由器为什么都是官翻

在当今移动应用竞争激烈的环境中,保护您的iOS应用免受逆向工程攻击变得尤为重要。SwiftShield作为一款专业的Swift代码混淆工具,为开发者提供了简单高效的解决方案。 【免费下载链接】swiftshield 🔒 Swift Obfuscator that protects iOS app…

张小明 2026/1/9 18:11:16 网站建设

企业网站首页的实现温州营销网站公司电话

文章:S5: Scalable Semi-Supervised Semantic Segmentation in Remote Sensing代码:https://github.com/MiliLab/S5单位:武汉大学一、问题背景:遥感分析的“标注困境”与“规模瓶颈”遥感图像语义分割是图像理解的核心任务&#x…

张小明 2026/1/9 18:38:28 网站建设

怎么制作网站教程手机中国前100强企业

yudao-cloud v2.4.2重磅发布:IoT设备管理与工作流引擎双核驱动企业数字化转型 【免费下载链接】yudao-cloud ruoyi-vue-pro 全新 Cloud 版本,优化重构所有功能。基于 Spring Cloud Alibaba MyBatis Plus Vue & Element 实现的后台管理系统 用户小…

张小明 2026/1/9 10:07:51 网站建设