Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Can we reverse a linked list in less than O(n)?

  • Difficulty Level : Easy
  • Last Updated : 09 Jul, 2021

It doesn’t look possible to reverse a simple singly linked list in less than O(n). A simple singly linked list can only be reversed in O(n) time using recursive and iterative methods. 

A memory-efficient doubly linked list with head and tail pointers can also be reversed in O(1) time by swapping head and tail pointers. 

A doubly linked list with head and tail pointers can also be reversed in O(1) time by swapping head and tail pointers, but we would have to traverse the list in forward direction using prev pointer and reverse direction using next pointer which may not be considered valid. 

This article is contributed by Abhishek. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
 

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!