环形链表
环形链表
MR.XSS链表
判断链表是否有环
方式一(哈希表)
使用哈希表
- 从头到尾遍历链表
- 依次塞进哈希表,在塞进哈希表之前,先检查表中是否存在该节点
- 存在,就说明有环
- 链表遍历到尾部,也没有发现,就说明该链表没有环
代码实现过程
1 | /** |
方式二(快慢指针)
使用快慢指针
- 设置一个快指针每次走两步,一个慢指针,一次走一步
- 若快指针走到空,说明链表无环
- 如果有环,快慢指针会在环里面相交
- 相交时刻,将快指针置为头节点,此刻开始,快慢指针每次都是走一步
- 下次相遇时刻就是环的入口
代码
1 | /** |
Comment
匿名评论隐私政策