leetcode 142. Linked List Cycle II
来源:互联网 发布:淘宝如何转接人工客服 编辑:程序博客网 时间:2024/06/01 08:46
题目:Given a linked list, return the node where the cycle begins. If there is no cycle, return null
.
给定一个链表,返回链表中环的第一个节点。
思路:
p1为环开始的节点,p2为fast指针和slow指针相遇的节点。A 、B、 C分别为三段的距离。当相遇的时候slow指针经过的路程为(A + B)而fast指针经过的路程为(A + B + C + B)。同时fast经过的路程又是slow的两倍,所以又(A + B + C + B)= 2(A + B)所以最后得到A = C!那么当两者相遇的时候,只需要将slow指针放回到起始节点,而fast指针继续在原有位置上向前走。两个指针一相同的速度访问节点。当两者再次相遇的时候,相遇的节点就是环路起始节点p1。
代码AC:
0 0
- [LeetCode]141. Linked List Cycle【&142. Linked List Cycle II】
- leetcode--141. Linked List Cycle&&142. Linked List Cycle II
- LeetCode 141. Linked List Cycle && 142. Linked List Cycle II
- 142. Linked List Cycle II leetcode list
- LeetCode 142. Linked List Cycle II
- [LeetCode]142.Linked List Cycle II
- [leetcode] 142.Linked List Cycle II
- [leetcode] 142. Linked List Cycle II
- leetcode 142. Linked List Cycle II
- [Leetcode]142. Linked List Cycle II @python
- [LeetCode]142. Linked List Cycle II
- 142. Linked List Cycle II LeetCode
- LeetCode:142. Linked List Cycle II
- LeetCode--142. Linked List Cycle II
- LeetCode 142. Linked List Cycle II
- LeetCode 142. Linked List Cycle II
- LeetCode *** 142. Linked List Cycle II
- LeetCode 142. Linked List Cycle II
- 设计模式(五)原型模式
- springboot使用(一)
- 最近在做关于机械臂的控制
- 用两个栈实现队列
- Java多线程
- leetcode 142. Linked List Cycle II
- Qt信号槽与观察者模式
- JavaWeb——Listener监听器
- PID
- CSS:text-transform
- 104. Maximum Depth of Binary Tree
- 重建二叉树
- 最大字段和2
- PAT (Advanced Level) Practise 1020. Tree Traversals (25)