给定一个链表,判断链表中是否有环。

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

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

进阶:

你能用 O(1)(即,常量)内存解决此问题吗?

示例 1:

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

示例 2:

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

示例 3:

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

1.暴力解法(建立集合)

class Solution:def hasCycle(self,head:ListNode)->bool:visited = set()cur = headwhile cur!=None:if cur in visited:return Trueelse:visited.add(cur)cur = cur.nextreturn False

2.快慢指针

class Solution:def hasCycle(self, head: ListNode) -> bool:fast = headslow = headwhile fast !=None and fast.next !=None:fast = fast.next.nextslow = slow.nextif fast==slow:return Truereturn False

[leetcode] 141.环形链表相关推荐

  1. LeetCode 141. 环形链表 简单难度

    ** 141. 环形链表 ** 给定一个链表,判断链表中是否有环. 如果链表中存在环,则返回 true . 否则,返回 false . 解题思路(两种方法): 方法一:用集合set以及set.find ...

  2. LeetCode - 141. 环形链表

    141. 环形链表 import java.util.Objects;class ListNode {int val;ListNode next;ListNode(int x) {val = x;ne ...

  3. LeetCode 141. 环形链表

    原题链接 解题思路:快慢指针,如果快指针被慢指针追上一定是环形链表 /*** Definition for singly-linked list.* struct ListNode {* int va ...

  4. leetcode 141.环形链表 I - 142.环形链表 II 代码及指针相遇证明问题

    ⭐️ 环形链表 I 题目描述 给你一个链表的头节点 head ,判断链表中是否有环.如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环. 如果链表中存在环 ,则返回 tru ...

  5. Leetcode 141.环形链表

    难度:简单 频率:155 题目: 给你一个链表的头节点head,判断链表中是否有环. 如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环.为了表示给定链表中的环,评测系统内部使 ...

  6. leetcode - 141. 环形链表(哈希表)

    给定一个链表,判断链表中是否有环. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始). 如果 pos 是 -1,则在该链表中没有环. 示例 1: 输入: ...

  7. 32. Leetcode 141. 环形链表 (链表-双指针-环形链表)

    给你一个链表的头节点 head ,判断链表中是否有环.如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环. 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表 ...

  8. Leetcode 141.环形链表 (每日一题 20210617)

    给定一个链表,判断链表中是否有环.如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 ...

  9. Leetcode 141. 环形链表 解题思路及C++实现

    解题思路: 定义快慢两个指针,当指针所指节点是同一个时,说明出现了环. /*** Definition for singly-linked list.* struct ListNode {* int ...

最新文章

  1. 吴恩达deeplearning.ai发布NLP课程!
  2. VS2013配置编译Caffe-Win10_X64
  3. error:Name node is in safe mode.
  4. 计算1到100的整数和
  5. 关于Jmeter关联,从概念讲起
  6. Luogu P3223 [HNOI2012]排队 组合
  7. amtemu.v0.9.2-painter.exe百度网盘下载
  8. DSP28335加密及解密
  9. 中南大学湘雅医院冯嵩:业财融合一体化信息平台的建设
  10. 计算机里什么是目录,c盘perflogs是什么文件夹_电脑中perflogs文件夹能删除吗-win7之家...
  11. RDS - 远程桌面服务
  12. uniapp:广告API使用总结
  13. Unzip error: unsupported compression method 99
  14. 全新英特尔vPro平台,为数智时代保驾护航
  15. 网络可视对讲系统服务器解决方案,医护可视对讲系统(IP网络)解决方案
  16. 安装kali步骤(超级超级详细)
  17. 国产无线耳机什么牌子好?国产真无线蓝牙耳机排行
  18. 两个umijs/max项目使用微前端简单示例
  19. 轻巧的批量图片压缩工具imgfast
  20. ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它

热门文章

  1. 如何在 IDEA 使用Debug 图文教程
  2. RabbitMQ之mandatory和immediate
  3. Android到底何去何从?来自腾讯、阿里、京东、网易、美图等大咖为你揭晓
  4. LiveVideoStackCon讲师热身分享 ( 六 ) —— 多媒体业务QoEQoS指标设计与监控
  5. 时下最流行前端构建工具Webpack 入门总结
  6. “新基建”沙龙(一)精华回顾 | 5G与工业互联网的发展机遇与挑战
  7. 为技术匠人打call!用匠人精神,打造技术文化
  8. 交付效率提升40%,珍爱网基于微服务的DevOps落地指南
  9. 腾讯初探AI+农业 获国际AI温室种植大赛亚军
  10. [FFmpeg] ffmpeg 常用命令