How it works
Singly vs doubly linked
A singly linked list points forward only; a doubly linked list also points backward, easing deletion and reverse traversal.
Fast and slow pointers
Two pointers moving at different speeds detect cycles and find the middle node in a single pass.
Tradeoffs
Linked lists give O(1) inserts at a known node but O(n) random access, the opposite of arrays.