In breve: Le strutture dati sono modi ordinati per conservare informazioni in memoria. Scegliere quella giusta rende i programmi più veloci e ordinati.
Cosa sono le strutture dati
Un programma lavora sempre con dei dati. I dati devono essere conservati in modo ordinato per poterli ritrovare.
Una struttura dati è uno schema che organizza le informazioni in memoria. È come scegliere un contenitore adatto: una scatola, uno scaffale o una rubrica.
Ogni struttura ha pregi e difetti. Alcune sono veloci a cercare, altre a inserire nuovi elementi.
Le strutture dati principali
L'array è una sequenza di caselle numerate. Ogni casella contiene un valore dello stesso tipo. Si accede a una casella indicando la sua posizione.
La lista collega gli elementi uno dopo l'altro. Ogni elemento sa dove si trova il successivo. È utile quando aggiungiamo o togliamo dati spesso.
La pila funziona come un mucchio di piatti. Si aggiunge e si toglie sempre dall'alto. Si chiama anche regola LIFO: ultimo entrato, primo uscito.
La coda funziona come la fila alla cassa. Il primo arrivato è il primo servito. Si chiama regola FIFO: primo entrato, primo uscito.
L'albero organizza i dati a livelli, come un albero genealogico. Ha una radice in alto e rami che scendono.
Esempi pratici
Un elenco di voti scolastici può stare dentro un array. Ogni casella contiene un voto: posizione 0, posizione 1 e così via.
La cronologia del browser usa una pila. L'ultima pagina visitata è la prima che torna indietro con il tasto Back.
La stampante gestisce i documenti con una coda. Il primo documento inviato è il primo a essere stampato.
Le cartelle del computer sono organizzate come un albero. La cartella principale contiene sottocartelle, che contengono altre sottocartelle.
In classe possiamo implementare un array in molti linguaggi. In Java si scrive int[] voti = new int[10]; per creare dieci caselle.
Parole difficili
- Implementazione: la scrittura concreta in un linguaggio di programmazione.
- Memoria: lo spazio del computer dove i dati vengono conservati.
- LIFO: sigla che significa "ultimo entrato, primo uscito".
- FIFO: sigla che significa "primo entrato, primo uscito".
- Indice: numero che indica la posizione di un elemento.
- Nodo: singolo elemento di una lista o di un albero.
Riferimenti
- Norma: Riordino degli istituti tecnici
- Obiettivo formativo coperto: ob.tecnico-informatica-telecomunicazioni.informatica.cl3.strutture-dati.01