Java - Queue in Java | LinkedList | PriorityQueue | Java Datenstrukturen | Java programmieren lernen

preview_player
Показать описание
Hallo zusammen,
herzlich Willkommen bei Model My Mind, deinem Informatik-Kanal.

Das Queue-Interface gibt es seit Java 5. Hierbei bietet Java mehrere Queue-Implementierungen an, die sich in ihren Eigenschaften ein wenig unterscheiden. Das Queue Interface bietet sechs Methoden an, die wir im heutigen Video betrachten werden.
Die Java Queue-Schnittstelle stellt eine Datenstruktur dar, die es erlaubt, Elemente am Ende der Datensruktutr einzufügen und Elemente am Anfang der Datenstruktur zu entfernen. Tatsächlich kann man sich es ähnlich wie eine Warteschlange in einem Supermarkt vorstellen.

Wie vorhin erwähnt gibt es diverse Queue-Implementierungen.
In diesem Video werde ich exemplarisch zwei Queue Instanzen erzeugen. Zum einen definieren wir eine LinkedList als Queue und zum anderen betrachten wir eine PriorityQueue.

Das Thema LinkedList kennen wir aus einem vorherigen Video. Damit wir aber eine Queue betrachten, ist es wichtig, dass wir die Referenzvariable als Typ "Queue" definieren. Ansonsten kann es passieren, dass wir die Bedingungen für eine Queue verletzten. Beispielsweise dann, wenn wir Elemente von einem beliebigen Index entfernen. Dies würde ja gegen das Prinzip einer Warteschlange sein.
Eine Prioritätswarteschlange ist eine Datenstruktur, die Elemente innerhalb der Queue sortiert. Es kann z.B. sein, dass Nachrichten in ein System kommen, die aber nicht gleich wichtig sind und dementsprechend sich in ihrer Priorität unterscheiden.
Hierbei willst du, dass Elemente höherer Priorität zuerst verarbeitet werden sollen. Genau dies erreichst du mit der PriorityQueue.
Für die Priorisierung müssen die Elemente eine natürliche Sortierung besitzen. String oder Wrapper-Objekte haben diese. Alternativ kann ein Comparator angegeben werden.

#java #queue #informatik
Рекомендации по теме
Комментарии
Автор

Falls dir das Video gefallen hat, dann gib mir gerne einen Daumen nach oben. Ich wünsche dir viel Spaß mit diesem Video :)

ModelMyMind
Автор

Wie immer ein tolles und informatives Video 😊👍

dustinglienke
Автор

Daumen hoch! Ich verzweifle gerade an einem Projekt😮‍💨 aber endlich gibt es Videos von dir für Anfänger 😅👍

peterzwegat
Автор

Wenn der Algorithmus mir diese feinste #ModelMyMind Perle nicht von alleine präsentiert, weiß er nicht gut über mich bescheid. Man, bin ich sauer😡🤬! Weiter so😜

Fumanshu
Автор

ArrayDeque sollte in den meisten Fällen effizienter sein als eine LinkedList.

hansmaulwurf