赞
踩
首先需要知道链表是否为空,如果不为空,则继续判断。
思路:
定义两个快慢指针,让他们一直移动,如果最终快指针=慢指针,这说明在这个链表中必然存在环。
如果是非带环链表,那么快指针到最后一定是null
左边浅黄色为慢指针slow,右边浅绿色为快指针fast,一开始都在头部
第一次:
第二次:
第三次:
第四次:
此时fast和slow相遇,说明是带环链表
public class test {
public boolean hasCycle(ListNode head) {
ListNode fast
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。