\section{Datenstrukturen}

\subsection{Union-Find}
\lstinputlisting{datastructures/unionFind.cpp}

\subsection{Segmentbaum}
\lstinputlisting{datastructures/segmentTree.cpp}
\lstinline{update()} kann so umgeschrieben werden, dass ganze Intervalle geändert werden.
Dazu muss ein Offset in den inneren Knoten des Baums gespeichert werden.

\subsection{Fenwick Tree}
\lstinputlisting{datastructures/fenwickTree.cpp}


\subsection{Range Minimum Query}
\lstinputlisting{datastructures/RMQ.cpp}

\subsection{STL-Tree}
\lstinputlisting{datastructures/stlTree.cpp}
