快慢针常用来判断链表是否成环,成环则返回第一个环起点。通常快指针两个步长,慢指针一个步长。
简图如下
1 | ⬇️<-<-<-⬆️ |
思路
1 | 判断是否相遇只要看快慢针会不会相遇就行了 |
思路清晰了,-接下来就是算法实现了
1 | (head) => { |
可以利用快慢针巧妙地判断两条单链表是否成环。
1 | // |
说一下,这个算法的执行用时是60ms
(emmm…),有个问题待讨论,把变量声明let
换成var
用时是64ms
.
Yu Blog
快慢针常用来判断链表是否成环,成环则返回第一个环起点。通常快指针两个步长,慢指针一个步长。
简图如下
1 | ⬇️<-<-<-⬆️ |
思路
1 | 判断是否相遇只要看快慢针会不会相遇就行了 |
思路清晰了,-接下来就是算法实现了
1 | (head) => { |
可以利用快慢针巧妙地判断两条单链表是否成环。
1 | // |
说一下,这个算法的执行用时是60ms
(emmm…),有个问题待讨论,把变量声明let
换成var
用时是64ms
.