1. Che cos'è una Coda (Queue)?
Una coda (o queue) è una struttura dati astratta che segue il principio FIFO (First In, First Out). Funziona esattamente come una normale fila alla cassa di un supermercato: il primo cliente che arriva è il primo a essere servito, e i nuovi arrivati si mettono in fondo alla fila.
2. Le Operazioni Fondamentali
A differenza delle pile, la coda possiede due estremità distinte: la Testa (Front) da cui si rimuovono gli elementi e la Coda (Rear / Tail) in cui vengono inseriti. Le operazioni principali sono:
- Enqueue (Accodamento): Inserisce un nuovo elemento in fondo alla coda (sul lato Rear).
- Dequeue (Rimozione / Servizio): Rimuove e restituisce l'elemento situato in testa alla coda (sul lato Front).
- Front / Peek: Restituisce il valore dell'elemento in testa senza rimuoverlo.
- IsEmpty: Verifica se la struttura è vuota.
- Gestione delle code di stampa: I documenti inviati a una stampante vengono elaborati rigorosamente nell'ordine di arrivo.
- Scheduling dei processi nei sistemi operativi: La gestione dei task pronti per l'esecuzione sulla CPU (es. code FIFO o multi-livello).
- Buffering di dati nelle comunicazioni di rete: Gestione dei pacchetti in transito nei router e nei socket di rete.
3. Simulatore Interattivo: Coda FIFO
Sperimenta il comportamento di una coda eseguendo operazioni di Enqueue (inserimento in fondo) e Dequeue (estrazione dalla testa).