Solution
= Solution
A <dummy header node> gives the first actual <linked list node> a predecessor, just like every other element. <Linked-list deletion> and insertion at the front can therefore update a predecessor's `tail` with the same code used in the middle. An empty <linked list> is represented by a header whose `tail` is `NIL`.
$$
\boxed{\text{A permanent predecessor removes special cases at the head.}}
$$