前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Java实现给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。

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

作者头像
CaesarChang张旭
发布于 2021-01-26 06:14:09
发布于 2021-01-26 06:14:09
88800
代码可运行
举报
文章被收录于专栏:悟道悟道
运行总次数:0
代码可运行

By 张旭 CaesarChang 合作 : root121toor@gmail.com

关注我 带你看更多好的技术知识和面试题

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**
 * Definition for singly-linked list.
 * class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
public class Solution {
    public boolean hasCycle(ListNode head) {
             if(head==null){
                return false;
            }
        ListNode fast=head.next;
        ListNode slow=head;
        while(fast!=null&&fast.next!=null){
            
            if(fast.equals(slow)){
                return true;
            }
            fast=fast.next.next;
            slow=slow.next;
        }
        return false;
    }
}

使用快慢指针,刚开始快比慢快1,然后快走2 慢走1, 总会碰到.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/09/06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Java实现输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5
By 张旭 CaesarChang 合作 : root121toor@gmail.com
CaesarChang张旭
2021/01/26
6040
LeetCode-141-环形链表
为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。
benym
2022/07/14
1570
[第29期] 熟悉链表的几个经典题目- #141,#142, #19
昨天我们回顾了 链表的一些基础操作, 今天我们一起来看下几道链表的经典题目, 来巩固对链表的认识和理解。
皮小蛋
2020/03/02
3440
LeetCode 每日一题141: 环形链表
为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。
benny
2019/03/07
4370
LeetCode 每日一题141: 环形链表
LeetCode-142-环形链表2
为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。
benym
2022/07/14
1590
环形链表找入口,真的太妙了
链表是否有环问题看似简单,但实际处理上有很多需要注意的,这个问题是非常高频笔试面试题,记忆不牢固容易遗忘,可以认真看看学习一波!当然今天这两题对应力扣141和力扣142,有个小伙伴就在某手面试中遇到了。
bigsai
2021/06/25
1.7K0
环形链表找入口,真的太妙了
【一天一大 lee】环形链表II (难度:中等) - Day20201010
给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。
前端小书童
2020/10/26
2750
【一天一大 lee】环形链表II (难度:中等) - Day20201010
【python-leetcode141-快慢指针】环形链表
为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。
西西嘛呦
2020/08/26
3330
141. 环形链表
如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。
chuckQu
2022/08/19
2230
leetcode-141. 环形链表
利用快慢指针来判断链表是否含环的原理是:若链表存在环,那么快的指针一定在某时刻遇上慢指针。
灰太狼学Java
2022/06/17
1630
leetcode-141. 环形链表
LeetCode141题 环形链表(Linked List Cycle)
给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。
code随笔
2020/04/14
2820
LeetCode141题 环形链表(Linked List Cycle)
每天一道leetcode141-环形链表
题目 每天一道leetcode141-环形链表 分类:链表 中文链接: https://leetcode-cn.com/problems/linked-list-cycle/description/ 英文链接 https://leetcode.com/problems/linked-list-cycle/description/ 题目详述 给定一个链表,判断链表中是否有环。 进阶: 你能否不使用额外空间解决此题? 题目详解 思路 使用两个指针,一个快指针,一个慢指针; 快的每次走两步,慢的每次走一步
乔戈里
2019/09/17
2670
Leetcode 142
为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。
anakinsun
2019/05/26
6550
234. 回文链表
请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 解:借用上题反转数组方法,快慢指针找中点很奇妙的方法,还可以用来找环。 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; *
张伦聪zhangluncong
2022/10/26
1730
七十、反转和合并链表、 链表有环的判断
最近在重新梳理学算法的知识,本文为链表常见操作复习的总结文章,会讲解常见的链表题目实现思路及附上答案,这些题目在leetcode上对应的题号也有给出,好好学习算法吧~
润森
2022/08/17
4730
七十、反转和合并链表、 链表有环的判断
马上2021年了线性表你还不知道原理?给老王整的明明白白
线性表是n个数据元素的有限序列,最常用的是链式表达,通常也叫做线性链表或者链表在链表中存储的数据元素也叫做结点,一个结点存储的就是一条数据记录。
手撕代码八百里
2020/10/26
3750
七十一、去重交换排序链表、 求链表的中间结点
最近在重新梳理学算法的知识,本文为链表常见操作复习的总结文章,会讲解常见的链表题目实现思路及附上答案,这些题目在leetcode上对应的题号也有给出,好好学习算法吧~
润森
2022/08/17
4480
七十一、去重交换排序链表、 求链表的中间结点
【每日一题】5.LeetCode——环形链表
如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。
爱敲代码的小杨.
2024/05/07
770
【每日一题】5.LeetCode——环形链表
【一天一大 lee】反转字符串 (难度:简单) - Day20201008
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。
前端小书童
2020/10/26
2860
【一天一大 lee】反转字符串 (难度:简单) - Day20201008
LinkedList - 141. Linked List Cycle
Given a linked list, determine if it has a cycle in it.
ppxai
2020/09/23
3900
推荐阅读
相关推荐
Java实现输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验