Reverse a Linked List – Part 2

This post is the extension of our earlier post Reverse a linked list. Here We have provided the better recursive solution in which we start reversing the list from the end.

Objective: Reverse the given linked list.

Input: A Linked List

Output: Reversed Linked List

Example:

Original List :->10->8->6->4->2
Reversed List :->2->4->6->8->10

Approach:

Recursion:

  • Traverse till the end of list through recursion.
  • Make the last node as head.
  • Now you are at the end of the list and rest of the nodes are stores in a stack
  • Now while coming back, each node will pop out from the stack in reverse order
  • take these nodes and start pointing it to next node coming out of stack.
reverse Linked List - Part 2

reverse Linked List – Part 2

Complete Code:

Output:
Original List :
->10->8->6->4->2
Reversed List :
->2->4->6->8->10

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: