Junior
Was ist eine Warteschlange im Kontext der Programmierung?
sobes.tech KI
Antwort von AI
Warteschlange (Queue) ist ein abstrakter Datentyp, der das FIFO-Prinzip (First-In, First-Out) implementiert, wobei das erste hinzugefügte Element als erstes entfernt wird.
Hauptoperationen:
- Enqueue: Ein Element ans Ende der Warteschlange anhängen.
- Dequeue: Ein Element vom Anfang der Warteschlange entfernen.
- Peek/Front: Den Wert des Elements am Anfang der Warteschlange erhalten, ohne es zu entfernen.
- IsEmpty: Überprüfen, ob die Warteschlange leer ist.
- Size: Die aktuelle Anzahl der Elemente in der Warteschlange erhalten.
Anwendungsbeispiele:
- Aufgabenverwaltung in Betriebssystemen.
- Verarbeitung von Anfragen in Webservern.
- Graphdurchlauf-Algorithmen (BFS - Breadth-First Search).
- Puffer für sequenzielle Datenverarbeitung.
Die Implementierung kann auf Arrays oder verketteten Listen basieren.
# Beispiel für eine Queue-Implementierung mit einer Liste in Python
class Queue:
def __init__(self):
self.items = []
def is_empty(self):
return self.items == []
def enqueue(self, item):
self.items.append(item) # Am Ende hinzufügen
def dequeue(self):
if not self.is_empty():
return self.items.pop(0) # Vom Anfang entfernen
return None
def peek(self):
if not self.is_empty():
return self.items[0]
return None
def size(self):
return len(self.items)