😈博客主页:🐼大家好我叫张同学🐼
💖 欢迎点赞 👍 收藏 💗留言 📝 欢迎讨论! 👀
🎵本文由 【大家好我叫张同学】 原创,首发于 CSDN 🌟🌟🌟
✨精品专栏(不定时更新) 【数据结构+算法】 【做题笔记】【C语言编程学习】
☀️ 精品文章推荐
【C语言进阶学习笔记】三、字符串函数详解(1)(爆肝吐血整理,建议收藏!!!)
【C语言基础学习笔记】+【C语言进阶学习笔记】总结篇(坚持才有收获!)
| 前言 |
为什么要写
刷题笔记?
写博客的过程也是对自己刷题过程的梳理和总结,是一种耗时但有效的方法。
当自己分享的博客帮助到他人时,又会给自己带来额外的快乐和幸福。
(刷题的快乐+博客的快乐,简直是奖励翻倍,快乐翻倍有木有QAQ🙈)
| 题目内容 |
给你一个链表的头节点
head,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。
为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。如果pos是-1,则在该链表中没有环。
注意:pos不作为参数进行传递,仅仅是为了标识链表的实际情况。 如果链表中存在环,则返回true。 否则,返回false。

| 暴力取巧法 |
要解决这个问题,有一个不算方法的方法,我们注意到题目中说了链表中节点的数目范围是[0, 10^4]。
对于带环的链表,我们去求其长度,一定是大于10^4的(也就是10000)。
对于不带环的链表,其长度一定是小于等于1
本文介绍了如何通过判断链表长度来检测环形链表的存在,并详细分析了快慢指针法的原理,包括为何快指针一步、慢指针两步能确保相遇,以及当快指针步长为n时可能无法追上的情况。
最低0.47元/天 解锁文章
505

被折叠的 条评论
为什么被折叠?



