Sentinel or Dummy Nodes
A sentinel node, also called a dummy node, is an artificial node placed at a boundary of a data structure. It does not represent actual application data. Its purpose is to simplify algorithms by eliminating special cases involving an empty list or insertion and deletion at the head.
It reduces conditional logic for head insertion and deletion.
It makes merging linked lists easier.
It simplifies removing a node after a known predecessor.
The sentinel is not considered part of the logical data.
It can make code easier to prove correct because boundary cases become ordinary cases.