Example 3 : Odd even linked List

TopicDifficultyCompanies
Array and Linked-List
MEDIUM

Given a singly linked list, write a program to group all odd nodes together followed by the even nodes.

Problem Note

  • Please note here we are talking about the node number and not the value in the nodes.
  • You should try to do it in place.
  • The program should run in O(n) time complexity.
  • The relative order inside both the even and odd groups should remain as it was in the input.
  • The first node is considered odd, the second node even, and so on.

Example 1

Input: 1->2->3->4->5->NULL
Output: 1->3->5->2->4->NULL
Explanation: The first group is of elements at odd position (1,3,5) in the linked list and then the ones at the even position(2,4)

Example 2

Input: 2->1->3->5->6->4->7->NULL
Output: 2->3->6->7->1->5->4->NULL
Explanation: The first group is of elements at odd position (2,3,6,7) in the linked list and then the ones at the even position(1,5,4)

Code Editor

Practice and Learn

Best way to learn is through solving real problems. Practice this problem in this code editor.