Solution (source code)

= Solution

A permanent <dummy header node> gives even the first real <linked list node> a predecessor. Insertion into an empty <linked list> and deletion or movement of its first real <linked list node> then use the same link updates as internal cases. The header itself represents no contact, so it also removes the need to use a real name as a special end marker. A search still needs a null-end check.