\begin{slide}{Kellerspeicher (Stacks)}

\verb|Stack<E>| 
ist eine Folge von Elementen $[y_0,y_1,\ldots,y_{n-1}]$,

Zugriffe (Lesen, Schreiben) passieren \emph{nur} am rechten Ende! 

\begin{itemize}\itemsep0pt
\item \verb|Stack<E> ()| Konstruktor, erzeugt leeren Keller $[]$ 
\item einkellern: 
  \verb|void push (E o)|: 
  aus Keller $[y_0,y_1,\ldots,y_{n-1}]$
  wird Keller  $[y_0,y_1,\ldots,y_{n-1},o]$
\item ansehen:
  \verb|E peek ()|:
  Keller ist (und bleibt)  $[y_0,y_1,\ldots,y_{n-1}]$,
  Resultat ist $y_{n-1}$.
\item auskellern:
  \verb|E pop ()|:
  aus Keller  $[y_0,\ldots,y,_{n-1},y_n]$,
  wird Keller  $[y_0,\ldots,y_{n-1}]$,
  Resultat ist $y_n$.
\item testen:
  \verb|boolean empty ()|:
  ist Keller leer (gleich $[]$)?
\end{itemize}

Implementiere peek() durch die anderen Methoden.

Wie kann man einen Keller kopieren
(nur unter Benutzung der angegebenen Methoden)?

\end{slide}


%%% Local Variables: 
%%% mode: latex
%%% TeX-master: "informatik"
%%% End: 
