MINT lernen

Algorithmen mit Stapeln

Zehn Übungen zu Hilfsstapeln, Klammerprüfung und Palindromen.

Dein Fortschritt:
0 / 0 Aufgaben
1

Übungsaufgaben

Zehn interaktive Übungen zum Klicken, Ziehen und Knobeln — von AFB I bis AFB III. Jede Übung gibt dir sofort Rückmeldung.

A1
Typische Stapel-Aufgaben
AFB I

Für welche Aufgaben ist ein Stapel das passende Werkzeug?

Mehrere Antworten sind richtig. Markiere alle zutreffenden und klicke dann auf „Prüfen“.
Stapel lohnen sich immer dann, wenn das zuletzt Gemerkte zuerst wieder gebraucht wird — beim Rückweg genauso wie bei verschachtelten Klammern.
A2
Stimmt's? — Hilfsstapel
AFB I

Fünf Aussagen zum Arbeiten mit Hilfsstapeln.

5 Aussagen nacheinander. Eine falsche Einschätzung reicht — dann startest du die Serie mit „Neue Runde“ neu.
Aussage 1 von 5

Umladen, bearbeiten, zurückladen — dieses Dreierschema löst die meisten Stapelaufgaben.
A3
Klammerausdrücke einordnen
AFB I

Was stellt der Stapel-Algorithmus bei jedem Ausdruck fest?

Ziehe jede Karte in den passenden Korb — oder wähle sie mit Enter aus und drücke dann die Ziffer des Korbs (0 legt sie zurück).
1korrekt
2falsche Klammerart
3Stapel leer bei schließender Klammer
4am Ende nicht leer
Bei [{]} liegt oben die geschweifte Klammer, wenn die eckige geschlossen wird — die Art passt nicht, obwohl die Anzahl stimmt.
A4
Ein Wort umdrehen
AFB II

Die Buchstaben von LAGER werden der Reihe nach mit push auf einen leeren Stapel gelegt und danach mit pop ausgegeben.

Arbeite die Kette Schritt für Schritt ab: Erst wenn ein Schritt stimmt, wird der nächste freigeschaltet. Enter prüft.
  1. erste Ausgabe
  2. dritte Ausgabe
  3. letzte Ausgabe
  4. Anzahl der push-Aufrufe
Ausgegeben wird REGAL — rückwärts gelesen ergibt LAGER ein neues Wort.
A5
Suchen ohne zu zerstören
AFB II

Die Methode prüft, ob x im Stapel s liegt, und lässt s danach unverändert. Bringe die Zeilen in die richtige Reihenfolge.

Ziehe die Karten in die richtige Reihenfolge — mit der Tastatur: ↑/↓ verschiebt, Shift+↑/↓ wechselt nur den Fokus.
1 Stack<String> hilf = new Stack<String>();
2 boolean gefunden = false;
3 while (!s.isEmpty()) { String e = s.pop(); if (e.equals(x)) gefunden = true; hilf.push(e); }
4 while (!hilf.isEmpty()) { s.push(hilf.pop()); }
5 return gefunden;
Ein vorzeitiges return true in der ersten Schleife wäre bequem — ließe aber einen halb umgeladenen Stapel zurück.
A6
Zwischenstände der Klammerprüfung
AFB II

Geprüft wird der Ausdruck [ ( ) { } ]. Was liegt nach dem jeweiligen Zeichen im Stapel (unten links, oben rechts)?

Setze in jeder Zeile das passende Kreuz — hier ist es genau eins pro Zeile. Enter setzt und löscht.
nach Zeichenleer[[ ([ {
1
2
3
4
6
Nach Zeichen 3 und nach Zeichen 5 sieht der Stapel gleich aus — beide Male wurde ein Paar vollständig geschlossen.
A7
Fehler in der Klammerprüfung
AFB II

Die Methode soll prüfen, ob in a jede runde Klammer richtig geschlossen wird. Welche Zeilen sind falsch?

In diesem Text stecken Fehler. Klicke genau die falschen Zeilen an — die richtigen musst du stehen lassen.
Zwei Prüfungen gehören immer dazu: vor jedem Entnehmen isEmpty(), am Ende noch einmal isEmpty().
A8
Wie hoch wird der Stapel?
AFB III

Wie viele Klammern liegen beim Prüfen von (()[{()}]) höchstens gleichzeitig im Stapel?

Rechne selbst und trage das Ergebnis ein — Enter prüft direkt.
Nach ( ( sind es 2, nach dem ersten ) wieder 1; dann [ { ( — 4 Klammern gleichzeitig. Die maximale Höhe entspricht der tiefsten Verschachtelung.
A9
Reihung umkehren
AFB III

Baue eine Methode, die eine neue DynArray mit den Elementen von l in umgekehrter Reihenfolge liefert. Zwei Bausteine sind Fallen.

Setze den Bauplan von oben nach unten zusammen. Ein Klick legt den Baustein auf den nächsten freien Platz, ein Klick im Bauplan legt ihn zurück. Enter funktioniert genauso.
Die top()-Falle erzeugt eine Endlosschleife: Der Stapel wird nie leer.
A10
Palindrom-Test
AFB III

Mit einem Stapel lässt sich prüfen, ob ein Wort vorwärts und rückwärts gleich ist. Spiele den Algorithmus durch.

Spiele den Ablauf Schritt für Schritt durch: Was passiert als Nächstes? Nur die richtige Karte bringt dich weiter.
    Wortumkehr, Palindrom und Klammerprüfung folgen demselben Gedanken: Der Stapel liefert das zuletzt Gemerkte zuerst.