Die meisten Programme verwenden viele Instanzen eines Objektes: Alle Mitarbeiter einer Firma, alle Streckenzüge einer Figur, alle Dateien einer Festplatte usw.
Für diese Daten benötigt man einen Behälter, in dem man diese so aufbewahren kann, dass man gewünschte Daten rasch finden kann. Außerdem muss man ggf. noch beachten, ob sich neue Daten leichteinfügen bzw. vorhandene löschen lassen.
Die einzelnen Kästchen stellen Elemente dar. Das gelb markierte Element bildet den Listenanfang (Kopf), das rot markierte Rechteck ist das letzte Element der Liste.
| Array (Reihung) | |
| linear verkettete Liste | |
| doppelt verkettete Liste | |
| Ringliste | |
| Stapel (Stack) | |
| Warteschlange (Queue) | |
Binärbaum (hierarchische Aufbewahrung) | |
| Vielwegbäume | |
Die beiden Typen Stack und Queue sind Sonderformen einer Liste mit einer sehr eingeschränkten Funktionalität:
Stack: Hinzufügen und Entfernen geht nur am Ende (oberstes Element). Die Elemente, die zuerst eingefügt werden, werden zum Schluss entnommen (First In - Last Oou -- FILO).
Queue: Neue Elemente werden immer am Ende hinzugefügt. Es kann nur jeweils der Kopf entnommen werden (Prinzip einer Warteschlange). Hier gilt: First In, First Out (FIFO).