Drei Strukturen, drei Zugriffsarten
Alle drei Strukturen speichern beliebig viele Elemente in einer Reihe. Sie unterscheiden sich darin, wo man hineinlegen und wo man herausnehmen darf.
| DynArray | Stapel | Schlange | |
|---|---|---|---|
| Zugriff | jedes Element über den Index | nur oben | nur vorn |
| Einfügen | an jeder Stelle | oben (push) | hinten (enqueue) |
| Entnehmen | an jeder Stelle | oben (pop) | vorn (dequeue) |
| Reihenfolge | frei | LIFO | FIFO |
- Weniger ist mehr:Stapel und Schlange können weniger als die Reihung — dafür sind Programme mit ihnen kürzer und Fehler seltener.
- Nachbauen:Jeden Stapel und jede Schlange könnte man mit einem DynArray nachbilden, müsste aber selbst auf die Regeln achten.
Die passende Struktur wählen
Entscheidend ist, in welcher Reihenfolge die Daten wieder gebraucht werden.
- Frage 1:Muss ich gezielt auf ein Element mitten in der Reihe zugreifen oder dort einfügen? → DynArray.
- Frage 2:Wird immer das zuletzt Hinzugefügte zuerst gebraucht? → Stapel.
- Frage 3:Wird in der Reihenfolge des Eintreffens abgearbeitet? → Schlange.
Ordne jede Situation der passenden Datenstruktur zu: Karte anklicken und dann einen Korb wählen — oder ziehen. Mit der Tastatur: Karte ansteuern und 1, 2 oder 3 drücken.
Halte fest: Man wählt die Struktur nach der Reihenfolge, in der die Daten wieder gebraucht werden — nicht nach der Art der Daten.
Wahl nach dem Zugriff: beliebig → DynArray · Neuestes zuerst → Stapel · Ältestes zuerst → Schlange
Allgemeine Hinweise
Nicht nach dem Inhalt wählen
Ob Namen, Zahlen oder Aufträge gespeichert werden, ist egal. Es zählt nur, welches Element als Nächstes gebraucht wird.
Begründen gehört dazu
In Klausuren genügt „Schlange“ nicht. Erwartet wird die Begründung über das Prinzip: Aufträge werden in der Reihenfolge ihres Eintreffens bearbeitet (FIFO).
Die Probe mit drei Elementen
Drei Elemente A, B, C hineinlegen und überlegen, welches zuerst wieder gebraucht wird: C → Stapel, A → Schlange, beliebig → DynArray.
