Reverse a singly linked list
Non-recursive method:
For this, we will use there pointer, namely previousNodePtr, currentNodePtr & nextNodePtr as shown in image.
And update their values in loop.
Recursive method:
We call recursive method continuously until we reach at end of list and after we update next pointer. Here is method call stack,
Output:
List: [1, 2, 3, 4, ] List after reverse: [4, 3, 2, 1, ] List after reverse (recursive):[1, 2, 3, 4, ]