141. 环形链表

Posted jianzha

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了141. 环形链表相关的知识,希望对你有一定的参考价值。

技术图片

package 链表;

/**
 * https://leetcode-cn.com/problems/linked-list-cycle/
 * 141. 环形链表
 * <p>
 * 解题思路 :采用快慢指针
 */
public class _141_Linked_List_Cycle {

    class ListNode {
        int val;
        ListNode next;

        ListNode(int x) {
            val = x;
            next = null;
        }
    }

    public class Solution {
        public boolean hasCycle(ListNode head) {
            if (head == null || head.next == null) {
                return false;
            }
            // 慢指针
            ListNode slow = head;
            // 快指针
            ListNode fast = head.next;
            while (fast != null && fast.next != null) {
                // 慢指针每次移动一个
                slow = slow.next;
                // 快指针每次移动两个
                fast = fast.next.next;
                // 如果慢指针和快指针重合说明有环
                if (slow == fast) {
                    return true;
                }
            }

            return false;
        }
    }
}

以上是关于141. 环形链表的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode第141题—环形链表—Python实现

leetcode141环形链表

LeetCode 141. 环形链表

「 每日一练,快乐水题 」141. 环形链表

「 每日一练,快乐水题 」141. 环形链表

141. 环形链表