Concept Flow - Reverse a Doubly Linked List
Start at head node
For each node: Swap prev and next pointers
Move to new prev (old next) node
Repeat until current node is None
Update head to last processed node
Done: List reversed
We start at the head and for each node, swap its previous and next pointers. Then move to the next node (which is the old next, now prev). Repeat until all nodes are processed. Finally, update the head to the last node processed.