Open In App

Is two way linked list and doubly linked list same?

Last Updated : 18 Mar, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

Yes, a two-way linked list and a doubly linked list are the same. Both terms refer to a type of linked list where each node contains a reference to the next node as well as the previous node in the sequence.

The term “two-way” emphasizes the ability to move in both directions through the list, while “doubly” highlights that there are two links per item. Despite the different names, they refer to the same structure.

Doubly-Linked-List-in-Data-Structure

Doubly Linked List

What is a Two-Way or Doubly Linked List?

A two-way or doubly linked list is a more complex type of linked list which contains a pointer to the next as well as the previous node in the sequence. This allows for more flexibility and operations than a simple linked list.

In a doubly linked list, each element has three parts:

  • Data: The information you’re storing.
  • Next Pointer: The address of the next element.
  • Previous Pointer: The address of the previous element.

This setup allows you to move forward to the next item or backward to the previous one, which is why it’s called “two-way” or “doubly” linked.

Why Use a Two-Way or Doubly Linked List?

A doubly linked list allows for traversal in both directions, forward and backward. This is useful in applications where you need to navigate back and forth such as in a web browser’s history. In a doubly linked list, insertions and deletions at both ends (front and back) are efficient. They can be done in constant time O(1).

Advantages of Two-Way or Doubly Linked List Over Other Data Structures:

Doubly linked lists have several advantages over other linear data structures.

  • Dynamic Size: Unlike arrays, a doubly linked list can grow and shrink in size during the execution of a program. It can easily accommodate an arbitrary number of elements.
  • Ease of Insertion and Deletion: Inserting a new node or deleting an existing node from a doubly linked list involves changing a constant number of pointers. In contrast, these operations in an array require shifting a large number of elements.

Real-World Applications of Two-Way or Doubly Linked List:

Doubly linked lists are used in various real-world applications:

  • Browser Cache: Web browsers use doubly linked lists to implement the back and forward navigation feature on a webpage.
  • Undo Functionality in Software Applications: Many software applications like text editors use doubly linked lists to implement undo and redo functionalities.
  • Operating Systems: Doubly linked lists are used in operating systems for managing various resources, like running processes.

Conclusion

A two-way linked list and a doubly linked list are the same thing. They’re just two names for a data structure that lets you move forwards and backwards through your elements, giving you more flexibility in how you navigate your data.


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads