Have you ever clicked:
Back
Forward
inside a browser?
That feature works efficiently because the system can move in both directions.
A Doubly Linked List provides exactly that capability.
Unlike a Singly Linked List, every node knows:
who comes next
who came before
1. What is a Doubly Linked List?
A Doubly Linked List is a collection of nodes where each node stores:
data
next pointer
previous pointer
Visual representation:
null ← [10] ⇄ [20] ⇄ [30] → null
This allows traversal in both directions.
2. Node Structure
public class DNode {
int data; DNode prev; DNode next;
DNode(int data) { this.data = data; this.prev = null; this.next = null; }
Enter fullscreen mode
Exit fullscreen mode
}
What's New?
Compared to a Singly Linked List:
Node next;
becomes
DNode prev;
DNode next;
One extra pointer unlocks bidirectional navigation.
3.…