Python Program For Printing Reverse Of A Linked List Without Actually Reversing Last Updated : 08 Jul, 2022 Summarize Comments Improve Suggest changes Share Like Article Like Report Given a linked list, print reverse of it using a recursive function. For example, if the given linked list is 1->2->3->4, then output should be 4->3->2->1.Note that the question is only about printing the reverse. To reverse the list itself see this Difficulty Level: Rookie Algorithm: printReverse(head) 1. call print reverse for head->next 2. print head->data Implementation: Python3 # Python3 program to print reverse # of a linked list # Node class class Node: # Constructor to initialize # the node object def __init__(self, data): self.data = data self.next = None class LinkedList: # Function to initialize head def __init__(self): self.head = None # Recursive function to print # linked list in reverse order def printrev(self, temp): if temp: self.printrev(temp.next) print(temp.data, end = ' ') else: return # Function to insert a new node # at the beginning def push(self, new_data): new_node = Node(new_data) new_node.next = self.head self.head = new_node # Driver code llist = LinkedList() llist.push(4) llist.push(3) llist.push(2) llist.push(1) llist.printrev(llist.head) # This code is contributed by Vinay Kumar(vinaykumar71) Output: 4 3 2 1 Time Complexity: O(n) Space Complexity: O(n) for call stack since using recursion Please refer complete article on Print reverse of a Linked List without actually reversing for more details! Comment More infoAdvertise with us Next Article Python - reversed() VS [::-1] , Which one is faster? K kartik Follow Improve Article Tags : Python Linked Lists Microsoft Python-DSA Practice Tags : Microsoftpython Similar Reads Javascript Program For Printing Reverse Of A Linked List Without Actually Reversing Given a linked list, print reverse of it using a recursive function. For example, if the given linked list is 1->2->3->4, then output should be 4->3->2->1.Note that the question is only about printing the reverse. To reverse the list itself see this Difficulty Level: Rookie Algorit 2 min read Print reverse of a Linked List without actually reversing Given a singly linked list. The task is to print the linked list in reverse order without actually reversing the linked list.Examples: Input: head : 1 -> 2 -> 3 -> 4 -> NULL Output: 4 -> 3 -> 2 -> 1 -> NULLInput: head: 1 -> 2 -> 3 -> 4 -> 5 -> NULL Output: 5 - 8 min read Reverse nodes of a linked list without affecting the special characters Given a linked list of alphabets and special characters. Reverse the given linked list without affecting the position of the special characters. Examples: Input: g -> @ -> e -> # -> e -> $ -> k -> s -> NULL Output: s -> @ -> k -> # -> e -> $ -> e -> g - 12 min read Python Program for Reversal algorithm for array rotation Write a function rotate(arr[], d, n) that rotates arr[] of size n by d elements. In this article, we will explore the Reversal Algorithm for array rotation and implement it in Python. Example Input: arr[] = [1, 2, 3, 4, 5, 6, 7] d = 2 Output: arr[] = [3, 4, 5, 6, 7, 1, 2] Rotation of the above array 2 min read Python - reversed() VS [::-1] , Which one is faster? Python lists can be reversed using many Python method such as using slicing method or using reversed() function. This article discusses how both of these work and Which one of them seems to be the faster one and Why. Reversing a list using SlicingThe format [a : b : c] in slicing states that from an 3 min read Javascript Program For Reversing A Linked List In Groups Of Given Size - Set 1 Given a linked list, write a function to reverse every k nodes (where k is an input to the function). Example: Input: 1->2->3->4->5->6->7->8->NULL, K = 3 Output: 3->2->1->6->5->4->8->7->NULL Input: 1->2->3->4->5->6->7->8->NULL, 3 min read Like