Search⌘ K
AI Features

Solution: Odd Even Linked List

Explore how to reorder a singly linked list by placing all odd-indexed nodes before even-indexed ones, while preserving their original order. Learn to manipulate the list in-place with constant extra space and linear time complexity, by using pointers to separate and reconnect odd and even nodes.

Statement

Given the head of a singly linked list, rearrange the nodes so that all nodes at odd indexes appear first, followed by all nodes at even indexes.

  • The first node in the list is considered at odd index 1, the second at even index 2, and so on.

  • Within the odd group and the even group, the relative order of the nodes must remain the same as in the original list.

Return the head of the reordered linked list.

Note: You must solve the problem in O(1)O(1) extra space complexity and O(n)O(n) time complexity.

Constraints:

  • The number of nodes in the linked list is in the range [0 ...