博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode 142. 环形链表 II(Linked List Cycle II)
阅读量:5117 次
发布时间:2019-06-13

本文共 1155 字,大约阅读时间需要 3 分钟。

142. 环形链表 II

142. Linked List Cycle II

题目描述

给定一个链表,返回链表开始入环的第一个节点。如果链表无环,则返回 null。

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

说明: 不允许修改给定的链表。

LeetCode142. Linked List Cycle II

示例 1:

输入: head = [3,2,0,-4], pos = 1
输出: tail connects to node index 1
解释: 链表中有一个环,其尾部连接到第二个节点。
1306719-20190522095020631-131438343.png

示例 2:

输入: head = [1,2], pos = 0
输出: tail connects to node index 0
解释: 链表中有一个环,其尾部连接到第一个节点。
1306719-20190522095032282-380037.png

示例 3:

输入: head = [1], pos = -1
输出: no cycle
解释: 链表中没有环。
1306719-20190522095042811-1606914221.png

进阶:

你是否可以不用额外空间解决此题?

Java 实现

ListNode Class

class ListNode {    int val;    ListNode next;    ListNode(int x) {        val = x;        next = null;    }}
public class Solution {    public ListNode detectCycle(ListNode head) {        ListNode fast = head, slow = head;        while (fast != null && fast.next != null) {            fast = fast.next.next;            slow = slow.next;            if (slow == fast) {                fast = head;                while (fast != slow) {                    fast = fast.next;                    slow = slow.next;                }                return slow;            }        }        return null;    }}

相似题目

参考资料

转载于:https://www.cnblogs.com/hglibin/p/10905344.html

你可能感兴趣的文章
【转】GPS基线解算模式
查看>>
快速排序实现代码 算法导论7.1 7.2 7.4
查看>>
C#给图片加文字和图片的水印
查看>>
JDK1.8 之Lambda
查看>>
如何给a标签绑定ajax事件
查看>>
花瓣网图片爬取
查看>>
网络营销相关缩写名称CPM CPT CPC CPA CPS SEM SEO解析
查看>>
微信、陌陌阴影下,中国社交领域未来的机会在哪里,四个象限看社交的格局...
查看>>
go语言,golang学习笔记1 官网下载安装,中文社区,开发工具LiteIDE
查看>>
Python开发WebService:REST,web.py,eurasia,Django
查看>>
图像处理——图像增强
查看>>
hdu 2051
查看>>
Qt 之 pro 配置详解
查看>>
Xcode的一些使用技巧
查看>>
PHPCMS 标签与示例
查看>>
JavaScript: 认识 Object、原型、原型链与继承。
查看>>
性能测试系列学习 day1
查看>>
Linux服务器开启tomcat的gc日志
查看>>
PCL—点云滤波(基于点云频率) 低层次点云处理
查看>>
Flask框架视图多层装饰器问题
查看>>