Strutture dati: differenze tra le versioni
(→Pila) |
(→Pila) |
||
Riga 6: | Riga 6: | ||
La '''pila''' (o stack) è una struttura di dati astratta, monodimensionale, costituita da elementi omogenei, ad esempio di tipo intero, ordinati in una sequenza. | La '''pila''' (o stack) è una struttura di dati astratta, monodimensionale, costituita da elementi omogenei, ad esempio di tipo intero, ordinati in una sequenza. | ||
La pila segue la logica di gestione dei dati LIFO (Last In First Out): le operazioni di inserimento ed eliminazione/estrazione di un elemento della pila sono effettuale dallo stesso estremo della sequenza, detto "testa della pila", dunque l'ultimo elemento inserito è quello che per primo viene estratto/eliminato. | La pila segue la logica di gestione dei dati LIFO (Last In First Out): le operazioni di inserimento ed eliminazione/estrazione di un elemento della pila sono effettuale dallo stesso estremo della sequenza, detto "testa della pila", dunque l'ultimo elemento inserito è quello che per primo viene estratto/eliminato. | ||
+ | [[File:Pila.png|Esempio di funzionamento della pila]] |
Versione delle 11:27, 19 mag 2017
Le strutture dati astratte sono strutture dati che non specificano il modo in cui i dati vengono memorizzati in memoria, ma ciascuna definisce un particolare comportamento di tipo logico nell'organizzazione dei dati. La rappresentazione di una struttura di dati astratta fatta mediante strutture dati concrete è detta "implementazione". Le strutture astratte che qui di seguito definiremo e implementeremo sono la Pila, la Coda.
Pila
La pila (o stack) è una struttura di dati astratta, monodimensionale, costituita da elementi omogenei, ad esempio di tipo intero, ordinati in una sequenza. La pila segue la logica di gestione dei dati LIFO (Last In First Out): le operazioni di inserimento ed eliminazione/estrazione di un elemento della pila sono effettuale dallo stesso estremo della sequenza, detto "testa della pila", dunque l'ultimo elemento inserito è quello che per primo viene estratto/eliminato.