Junior
Wat is een wachtrij in de context van programmeren?
sobes.tech AI
Antwoord van AI
De Queue (wachtrij) is een abstract datatype dat het FIFO-principe (First-In, First-Out) implementeert, waarbij het eerste toegevoegde element als eerste wordt verwijderd.
Belangrijkste operaties:
- Enqueue: Voeg een element toe aan het einde van de wachtrij.
- Dequeue: Verwijder een element van het begin van de wachtrij.
- Peek/Front: Verkrijg de waarde van het element aan het begin van de wachtrij zonder het te verwijderen.
- IsEmpty: Controleer of de wachtrij leeg is.
- Size: Verkrijg het huidige aantal elementen in de wachtrij.
Voorbeelden van gebruik:
- Taakbeheer in besturingssystemen.
- Verwerking van verzoeken in webservers.
- Grafdoorlaat algoritmen (BFS - Breadth-First Search).
- Buffers voor sequentiële gegevensverwerking.
De implementatie kan gebaseerd zijn op arrays of gekoppelde lijsten.
# Voorbeeld van implementatie van een wachtrij met behulp van een lijst in Python
class Queue:
def __init__(self):
self.items = []
def is_empty(self):
return self.items == []
def enqueue(self, item):
self.items.append(item) # Aan het einde toevoegen
def dequeue(self):
if not self.is_empty():
return self.items.pop(0) # Van het begin verwijderen
return None
def peek(self):
if not self.is_empty():
return self.items[0]
return None
def size(self):
return len(self.items)