news 2026/10/15 21:24:29

hot100 141.环形链表

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
hot100 141.环形链表

1.思路:快慢指针法。如果链表有环的话,快指针一定可以在一段时间后追上慢指针,这两个指针一定会相遇。

2.注意:代码比较两个节点的时候,比较的是内存地址是否一致,并没有比较节点的val。

3.疑问。

(1)快指针会不会跳过慢指针,从来不会和慢指针相遇呢?

答:

这是不可能的。如果由有环的话,那么快慢指针都会进入到环中。这个时候用“相对速度”思考,慢指针不动,快指针相对于慢指针每次只走一步,那么快慢指针一定会相遇。

(2)为什么代码里的while循环并没有判断slow是否为空?

答:

slow在fast的后面,如果fast不为空,那么slow也肯定不为空。也就是fast在探路,slow走的都是fast走过的路。

4.复杂度分析:

(1)时间复杂度:O(n),其中n是链表的长度。

(2)空间复杂度:O(1)。

附代码:

public class Solution { public boolean hasCycle(ListNode head) { ListNode slow = head; ListNode fast = head; while(fast != null && fast.next != null){ slow = slow.next; fast = fast.next.next; if(fast == slow){ return true; } } return false; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/15 6:44:51

微信小程序vue_uniapp二手书交易平台

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华
网站建设 2026/10/15 11:54:58

微信小程序vue_uniapp班级学生奖惩成绩信息管理系统

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华
网站建设 2026/10/14 22:37:33

HR追着要的面试分析Agent!全网首发华为ModelEngine实战

目录 引言 ModelEngine核心价值:一站式AI开发 端到端的AI开发流程 ModelEngine产品架构 数据工程 模型工程 应用编排 FIT: 重新定义 AI 工程化的三维坐标系 本地部署ModelEngine 获取源码 启动脚本 创建《HR人事经理》 创建应用 多分支划分 文本输出…

作者头像 李华
网站建设 2026/10/15 16:31:54

微信小程序uniapp-vue健身教练私教预约系统

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华
网站建设 2026/10/15 19:11:02

Windows系统 32 位与 64 位系统核心差异解析

Windows系统32位(x86)和64位(x64)核心区别在于硬件寻址能力,进而影响内存支持、性能发挥、软件兼容性,下面分核心差异、适配场景、选择建议讲清楚,易懂又全面:一、 核心区别&#xf…

作者头像 李华
网站建设 2026/10/15 17:31:14

微信小程序uniapp-vue精品课程在线学习平台

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华