Queue-Datenstruktur in Python
Eine Queue verarbeitet Elemente in derselben Reihenfolge, in der sie eingefügt wurden.
Was ist Queue-Datenstruktur?
Eine Queue verarbeitet Elemente in derselben Reihenfolge, in der sie eingefügt wurden.
Implementiere eine FIFO-Warteschlange effizient mit deque.
Wann wird dieser Ansatz verwendet?
- Algorithmen und Datenstrukturen anhand von ausführbarem Code verstehen.
- Die einzelnen Verarbeitungsschritte und Randfälle nachvollziehen.
- Laufzeit und Speicherbedarf verschiedener Lösungswege vergleichen.
Beispielcode
main.py
from collections import deque
queue = deque(["first", "second"])
queue.append("third")
print("served:", queue.popleft())
print("waiting:", list(queue))
Erwartete Ausgabe
served: first
waiting: ['second', 'third']
So funktioniert es
deque ermöglicht Anhängen rechts und Entfernen links in O(1), anders als das Entfernen am Anfang einer Liste.
Ändere die Werte und führe das Programm im CodeUtility Python Online-Compiler aus, ohne Python lokal zu installieren.
Übungsaufgaben
Verändere Eingaben und Randfälle, bevor du die Lösung mit größeren Datenmengen testest.
- Teste leere Eingaben, ein Element und doppelte Werte.
- Gib den Zustand nach jedem Schritt aus.
- Vergleiche Laufzeit und Speicherbedarf mit einem alternativen Verfahren.