  This introduction to graphs and graph algebras provides the optimal bound for
the number of all paths of length $k$ in a graph with $N\geq k$ edges and no
loops. Our proof relies on a construction of a number of terminating algorithms
that reshape such graphs without ever decreasing the number of paths of length
$k$. The key two algorithms work in turns each of them ending with a graph to
which the other algorithm can be applied. Finally, one arrives at a specific
graph realizing the optimal bound. Herein graph algebras mean path algebras and
Leavitt path algebras. For the ground field $\mathbb{C}$ of complex numbers,
the latter are viewed as dense subalgebras in their universal C*-completions
called graph C*-algebras.
