Skip to main content
Back to problems
Leetcode
Medium
Linked Lists
Two Pointers
Google
Amazon
Linked List Cycle II

Given the head of a linked list, determine whether a cycle exists and return the node where the cycle begins if one is present.

Acceptance 65%
Problem Statement

Problem

You are given the head of a singly linked list. The list may contain a cycle: following the next pointers may eventually lead back to an earlier node.

Return the node where the cycle begins. If the list does not contain a cycle, return null.

The answer must identify the actual node object, not just its value.

Input Format

  • A singly linked list head node is provided.
  • Each node contains an integer value and a next pointer.

Output Format

  • Return the first node that lies on the cycle, or null if no cycle exists.

Constraints

  • The linked list may be empty.
  • Node values are not guaranteed to be unique.
  • You should solve this in linear time with constant extra space.

Hints

  • First determine whether a cycle exists.
  • If two pointers move at different speeds, think about what it means when they meet.
  • After a meeting point is found, there is a standard way to locate the cycle entry.

Input Format

  • head: head of a singly linked list
  • Each node has fields val and next

Output Format

  • Return the node where the cycle starts, or null if the list is acyclic

Constraints

  • Linear time
  • Constant extra space
  • The list may be empty
  • Node values may repeat
Examples
Sample cases returned by the problem API.

Example 1

Input

head = [3,2,0,-4], pos = 1

Output

node with value 2

Explanation

The tail connects back to the second node, so the cycle starts at the node whose value is 2.

Example 2

Input

head = [1,2], pos = 0

Output

node with value 1

Explanation

The last node points back to the head, so the cycle begins at the first node.

Show 1 more example

Example 3

Input

head = [1], pos = -1

Output

null

Explanation

The list does not contain a cycle.

Premium problem context

Unlock deeper context for this problem

Premium adds guided hints, editorial links, similar variants, discussion resources, and concept maps so you can understand why a problem matters, not just solve it once.

Guided hints
Editorial and discussion links
Concept map and variants
Sign in to unlock
Track your progress
Sign in to bookmark this problem, save notes, and manage its revision plan.