- Insieme dinamico: collezioni di elementi che possono cambiare nel tempo, permettendo operazioni di aggiunta, rimozione e interrogazione di elementi. Le strutture dati successive sono implementazioni concrete di questo concetto.
- Array: Array bidimensionali (o multidimensionali), rappresentate come array monodimensionali (per righe o per colonne).
- Matrici: Per righe o per colonne. Le matrici possono anche essere rappresentate con più array
- Lista concatenata (Struttura dati): Organizzano gli elementi in maniera lineare tramite puntatori tra i nodi, invece che per indici contigui. Ogni nodo contiene dati e puntatori.
- Stack (Struttura dati): Un insieme dinamico che implementa lo schema LIFO (Last In – First Out), dove gli elementi vengono inseriti (
PUSH) e cancellati (POP) sempre dalla stessa estremità (la “cima”).
- Coda: Un insieme dinamico che implementa lo schema FIFO (First In – First Out), dove gli elementi vengono inseriti (
ENQUEUE) in una estremità (la “coda”) e cancellati (DEQUEUE) dall’altra (la “testa”).
- Hash table: Strutture dati che mappano le chiavi direttamente a posizioni di memoria, superando i limiti delle tabelle ad indirizzamento diretto che richiedono l’intero universo di chiavi. Utilizzano una funzione di hash
h(k) per calcolare l’indice.
- Albero: Strutture dati gerarchiche composte da nodi collegati. Hanno una radice (nodo senza padre) e ogni nodo può avere un numero arbitrario di figli.
- Grafo: