G. Amodeo, C. Gaibisso Programmazione di Calcolatori Lezione XXVI Il tipo di dato astratto queue Programmazione di Calcolatori: il tipo di dato astratto queue 1
G. Amodeo, C. Gaibisso La queue Programmazione di Calcolatori: il tipo di dato astratto queue2 Lidea: FIFO: First In First Out
G. Amodeo, C. Gaibisso Lo stack Programmazione di Calcolatori: il tipo di dato astratto queue 3 Possibile impiego (tra gli altri): gestione del processo di bufferizzazione di richieste di servizio da evadersi nello stesso ordine in cui sono state presentate
G. Amodeo, C. Gaibisso Le queue di valori di tipo T (Queue T ) Programmazione di Calcolatori: il tipo di dato astratto queue4 Modello: sequenza di elementi di tipo T, o più formalmente Queue T, a i T, i = 1, …, n Operazioni a)InitQueue: Queue T Valore: alcuno Effetto: QueueStack() <>
G. Amodeo, C. Gaibisso Le queue di valori di tipo T Programmazione di Calcolatori: il tipo di dato astratto queue5 b)Enqueue: Queue T x T Queue T Valore:alcuno Effetto:Enqueue(, a) Esempio: Enqueue(, 8) 8
G. Amodeo, C. Gaibisso Le queue di valori di tipo T Programmazione di Calcolatori: il tipo di dato astratto queue6 c)Front: Queue T T Valore:Front( ) = a 1 Effetto:alcuno Esempio: Front( )= 3
G. Amodeo, C. Gaibisso Le queue di valori di tipo T Programmazione di Calcolatori: il tipo di dato astratto queue7 d)Dequeue: Queue T Queue T x T Valore:Dequeue( ) = a 1 Effetto:Dequeue ( ) Esempio: Dequeue( )= 3
G. Amodeo, C. Gaibisso Le queue di valori di tipo T Programmazione di Calcolatori: il tipo di dato astratto queue8 e)EmptyQueue: Queue T Bool Valore:EmptyQueue(<>) = True EmptyQueue( ) = False Effetto:alcuno f)ResetStack: Queue T Queue T Valore:alcuno Effetto:ResetQueue ( ) <>