news 2026/9/25 10:11:23

力扣刷题:环形链表

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣刷题:环形链表

题目:
给你一个链表的头节点 head ,判断链表中是否有环。

如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。

如果链表中存在环 ,则返回 true 。 否则,返回 false 。

示例 1:

输入:head = [3,2,0,-4], pos = 1
输出:true
解释:链表中有一个环,其尾部连接到第二个节点。

示例 2:

输入:head = [1,2], pos = 0
输出:true
解释:链表中有一个环,其尾部连接到第一个节点。

示例 3:

输入:head = [1], pos = -1
输出:false
解释:链表中没有环。

解析:
这道题是一道经典的快慢指针的题目,也就是“操场跑圈”的算法。设置快慢指针,如果有圈的话,快慢指针一定会相遇,如果不能相遇,就代表没有环

具体代码:

/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} head * @return {boolean} */varhasCycle=function(head){letslow=head// 慢指针,每次走一步letfast=head// 快指针,每次走两步// 遍历链表,直到快指针到达末尾while(fast&&fast.next){slow=slow.next// 慢指针前进一步fast=fast.next.next// 快指针前进两步// 如果快慢指针相遇,说明有环if(fast===slow){returntrue}}returnfalse// 遍历完都没有相遇,说明无环};
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/24 17:26:35

Blender PSK插件终极指南:无缝连接3D建模与游戏开发

Blender PSK插件终极指南:无缝连接3D建模与游戏开发 【免费下载链接】io_scene_psk_psa A Blender plugin for importing and exporting Unreal PSK and PSA files 项目地址: https://gitcode.com/gh_mirrors/io/io_scene_psk_psa 还在为Blender与Unreal Eng…

作者头像 李华
网站建设 2026/9/24 14:20:02

代码重构的艺术:提升软件质量的关键

代码重构艺术的技术文章大纲定义与重要性代码重构的定义:在不改变外部行为的前提下优化代码结构重构的目的:提升可读性、可维护性、可扩展性重构与重写的区别重构的基本原则保持功能不变:确保重构不引入新问题小步前进:每次修改尽…

作者头像 李华
网站建设 2026/9/24 13:51:06

VOC气体检测仪的技术特性与实用价值|深圳霍尼艾格

VOC气体检测仪作为环境安全监测的关键设备,其核心功能在于精准识别并量、化空气中挥发性有机化合物的浓度。这类化合物广泛存在于工业生产、室内装修、交通运输等多个场景,部分种类具有毒性或刺激性,长期暴露可能对人体健康造成不可逆损伤。因…

作者头像 李华
网站建设 2026/9/24 17:26:18

22、Fedora系统软件安装、仓库添加及用户组管理全攻略

Fedora系统软件安装、仓库添加及用户组管理全攻略 1. 安装新软件 在很多情况下,安装新软件并不比更新软件难多少,因为Fedora有一些工具让你只需点击几下就能完成安装。使用Fedora的Package Manager添加程序,需要确保已连接到互联网,然后按以下步骤操作: 1. 选择“Appli…

作者头像 李华
网站建设 2026/9/24 17:26:13

Saladict桌面划词翻译工具完整使用指南

Saladict是一款功能强大的跨平台桌面翻译工具,集成了多种词典资源,支持实时划词翻译功能。无论是阅读外文文献、浏览国际网站还是学习外语,这款工具都能为您提供便捷的翻译体验。 【免费下载链接】saladict-desktop ✨✨桌面划词与翻译工具&a…

作者头像 李华
网站建设 2026/9/22 20:36:30

59、Linux网络管理、认证及资源探索

Linux网络管理、认证及资源探索 1. 网络服务部署与探索 1.1 新文件和打印服务器部署规划 作为网络管理员,若要部署一个新的文件和打印服务器,为Windows、Linux和Macintosh客户端计算机提供服务,同时该服务器还要提供DHCP服务并托管一个展示公司信息的小型网站,需要考虑以…

作者头像 李华