How does a doubly linked list differ from a singly linked list?
In a doubly linked list, each node has pointers to both the next and previous nodes, enabling traversal in both directions. In a singly linked list, nodes only have a pointer to the next node.