LeetCode 循环链表II
来源:互联网 发布:傅园慧网络直播 编辑:程序博客网 时间:2024/05/02 04:49
判断一个链表是否有循环,如果有返回第一相遇节点,否则返回NULL。
解题思路也是前面的龟兔赛跑问题,只不过问题变成了找循环的第一个节点。
解题如下:
/** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * next = null; * } * } */public class Solution { public ListNode detectCycle(ListNode head) { ListNode oneStep = head; ListNode twoStep = head; boolean cycle = false; while(oneStep != null && twoStep != null && twoStep.next != null){ oneStep = oneStep.next; twoStep = twoStep.next.next; if(oneStep == twoStep) { cycle = true; break; } } if(!cycle) return null; oneStep = head; while(twoStep != oneStep){ oneStep = oneStep.next; twoStep = twoStep.next; } return twoStep; }}
0 0
- LeetCode 循环链表II
- Leetcode Linked List Cycle II 循环链表入口
- LeetCode 142. Linked List Cycle II(循环链表)
- LeetCode 循环链表判断
- LeetCode循环旋转链表
- LeetCode中 翻转链表II
- leetcode找循环链表的循环点
- 【LeetCode】 Rotate List 循环链表
- Leetcode Linked List Cycle 循环链表
- 【Leetcode】61. Rotate List - 循环链表
- Reverse Linked List II 局部翻转链表@LeetCode
- LeetCode | Reverse Linked List II(翻转链表2)
- 闲话链表(二) leetcode 之 Reverse Linked List II
- LeetCode-Reverse Linked List II(反转链表)
- Leetcode Reverse Linked List II 反转部分单向链表
- [LeetCode] Reverse Linked List I II - 链表翻转问题
- LeetCode 92. Reverse Linked List II(翻转链表)
- [leetcode] Reverse Linked List II 链表反转
- 堆排序
- PHP定时 & cpanel守护作业
- HDU 5091 Beam Cannon(线段树)
- .Net Framework下的多线程安全集合
- Java 接口(interface)的用途和好处
- LeetCode 循环链表II
- ext的getValue()和getRawValue()的区别
- 制作各种docker镜像
- jsp 页面常见的中文乱码问题总结
- 模板题-----DFS深度搜索 HDU2952
- 2013 results(29 Aug,2013)
- core java volume
- c语言选择排序
- 谈.Net委托与线程——解决窗体假死(三)