  Most adaptive finite element strategies employ the D\"orfler marking strategy
to single out certain elements $\mathcal{M} \subseteq \mathcal{T}$ of a
triangulation $\mathcal{T}$ for refinement. In the literature, different
algorithms have been proposed to construct $\mathcal{M}$, where usually two
goals compete: On the one hand, $\mathcal{M}$ should contain a minimal number
of elements. On the other hand, one aims for linear costs with respect to the
cardinality of $\mathcal{T}$. Unlike expected in the literature, we formulate
and analyze an algorithm, which constructs a minimal set $\mathcal{M}$ at
linear costs. Throughout, pseudocodes are given.
