Queue

Aus wiki.kgl-ratingen.de
Wechseln zu: Navigation, Suche

Allgemein

Eine Queue, auch Warteschlange genannt, wird häufig zur Verwaltung von Arbeitsaufträgen verwendet (z.B. Druckaufträge in einer Druckerwarteschlange). Warteschlangen arbeiten nach dem FIFO-Prinzip (First in, first out), was bedeutet, dass Aufträge, die der Warteschlange als erstes zugefügt werden, auch als erstes bearbeitet werden. Eine Warteschlange besteht aus einem "head", einem "tail" und aus den sogenannten "nodes" (Knoten). Objekte vom Typ "node" speichern jeweils einen Verweis auf die nächste "node" und auf ein beliebiges Inhaltsobjekt (content). "Head" verweist dabei auf den ersten Knoten in der Warteschlange, wohingegen "tail" auf den letzten Knoten der Warteschlange verweist. Somit entsteht eine klare Reihenfolge von beispielsweisen Druckaufträgen, die dann nach und nach abgearbeitet werden können. Bei der Warteschlange handelt es sich um eine dynamische Datenstruktur, was bedeutet, dass die Größe der Warteschlangen, beziehungsweise die Anzahl der in ihr enthaltenen Knoten, veränderbar ist.


Generische Schlange

Methoden

Enqueue

Mit der Methode enqueue kann man Elemente in die Schlange hinzufügen.


Dequeue

Mit der Methode dequeue kann man Elemente der Schlange entfernen.


Front

Die Methode front gibt das erste Element aus.


isEmpty

Die Methode isEmpty fragt ab, ob die Warteschlange leer ist.

Literaturverzeichnis