Junior
Cos'è una coda nel contesto della programmazione?
sobes.tech AI
Risposta dell'AI
La coda (Queue) è un tipo di dato astratto che implementa il principio FIFO (First-In, First-Out), dove il primo elemento aggiunto sarà il primo a essere rimosso.
Operazioni principali:
- Enqueue: Aggiungere un elemento alla fine della coda.
- Dequeue: Rimuovere un elemento dall’inizio della coda.
- Peek/Front: Ottenere il valore dell’elemento all’inizio della coda senza rimuoverlo.
- IsEmpty: Verificare se la coda è vuota.
- Size: Ottenere il numero attuale di elementi nella coda.
Esempi di utilizzo:
- Gestione delle attività nei sistemi operativi.
- Elaborazione delle richieste nei server web.
- Algoritmi di attraversamento di grafi (BFS - Breadth-First Search).
- Buffer per l’elaborazione sequenziale dei dati.
L’implementazione può essere basata su array o liste collegate.
# Esempio di implementazione di una coda usando una lista in Python
class Queue:
def __init__(self):
self.items = []
def is_empty(self):
return self.items == []
def enqueue(self, item):
self.items.append(item) # Aggiungi alla fine
def dequeue(self):
if not self.is_empty():
return self.items.pop(0) # Rimuovi dall’inizio
return None
def peek(self):
if not self.is_empty():
return self.items[0]
return None
def size(self):
return len(self.items)