链表(三)——判断链表是否成环

2018-09-24  本文已影响0人  旺叔叔

LeetCode_141_LinkedListCycle

题目分析:

一快一慢两个指针,慢指针每次走一步,快指针每次走两步,如果成环,必定会在环内某处重合(被追上)。

解法:

public static boolean hasCycle(ListNode head) {
    ListNode slow = head, fast = head;
    while (fast != null && fast.next != null) {
        slow = slow.next;
        fast = fast.next.next;
        if (slow == fast) return true;
    }
    return false;
}
上一篇下一篇

猜你喜欢

热点阅读