Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Warteschlangen | Fortgeschrittene Datenstrukturen
Überblick Über Algorithmen und Datenstrukturen
course content

Kursinhalt

Überblick Über Algorithmen und Datenstrukturen

Überblick Über Algorithmen und Datenstrukturen

1. Einführung in ADS
2. Liste und Array
3. Fortgeschrittene Datenstrukturen
4. Graphen

book
Warteschlangen

Im Gegensatz zum Stapel arbeiten Warteschlangen nach dem FIFO (First In, First Out)-Prinzip. Das bedeutet, dass das erste Element, das in eine Warteschlange eingefügt wird, auch das erste ist, das entfernt wird. Das bedeutet, dass wir bei Warteschlangen nur das erste Element exklusiv manipulieren können. Das Verhalten der Datenstruktur Warteschlange ähnelt der Warteschlange im echten Leben.

Implementierung der Warteschlange

12345678910111213141516171819202122232425262728293031323334353637
import numpy as np class Queue: def __init__(self): self.queue = np.array([]) # Initialize an empty NumPy array def enqueue(self, item): self.queue = np.append(self.queue, item) # Add an item to the end of the queue def dequeue(self): if self.is_empty(): print("Queue is empty.") # Handle empty queue case gracefully return None # Return None if the queue is empty item = self.queue[0] # Get the first item from the queue self.queue = np.delete(self.queue, 0) # Remove the first item from the queue return item # Return the removed item def is_empty(self): return self.queue.size == 0 # Check if the queue is empty # Example usage: queue = Queue() queue.enqueue(1) queue.enqueue(2) queue.enqueue(3) print("Queue:", queue.queue) print("Dequeue:", queue.dequeue()) print("Queue after dequeue:", queue.queue) # Attempt to dequeue from an empty queue queue.dequeue() queue.dequeue() print("Dequeue from empty queue:", queue.dequeue()) # Should print 'Queue is empty.'
copy

Eine Warteschlange ist ebenfalls ein abstrakter Datentyp. Ebenso wie der Stapel definiert die Warteschlange zwei grundlegende Operationen, Einfügen und Löschen, die in zwei grundlegenden Methoden implementiert werden:

  • enqueue() - fügt ein Element am Ende einer Warteschlange ein;
  • dequeue() - entfernt das erste Element aus einer Warteschlange.

Der abstrakte Datentyp Warteschlange kann sowohl mit Hilfe der Array- als auch der verketteten Listen-Datenstruktur implementiert werden.

Zeitkomplexität der grundlegenden Operationen

Welche Datenstruktur wird häufig verwendet, um eine Warteschlange in Python zu implementieren?

Welche Datenstruktur wird häufig verwendet, um eine Warteschlange in Python zu implementieren?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 2
We're sorry to hear that something went wrong. What happened?
some-alt