Una struttura dati array è un metodo per memorizzare tipi di dati simili in una sequenza lineare.Questa sequenza lineare consente un accesso molto rapido ed efficiente a qualsiasi parte dell’array.Ogni pezzo di dati in un array si trova in una posizione numerata chiamato indice. I dati effettivi che si trovano in un particolare indice sono chiamati elemento. Gli array sono ampiamente utilizzati nella maggior parte dei linguaggi di programmazione per computer e sono la base per molti altri tipi di strutture dati.
Una delle caratteristiche principali di una struttura di dati array è il modo in cui viene archiviata in memoria. Nella maggior parte dei casi, gli array sono archiviati in una sequenza lineare. Altre strutture di dati, come gli elenchi collegati, può avere ogni elemento memorizzato in qualsiasi punto casuale della memoria sparso sull’intera area di spazio disponibile.Un array viene memorizzato in sequenza, quindi è possibile eseguire una serie di operazioni efficienti per trovare rapidamente l’indirizzo di un indice in memoria e recuperare i dati lì.
Esistono diversi modi per dichiarare una struttura dati array.La forma più semplice è un array unidimensionale, che inizia dall’indice zero e può avere tutti gli indici necessari.Un array bidimensionale ha due indici quando si fa riferimento, simili alla larghezza e all’altezza utilizzate per assemblare le coordinate su una griglia. Gli array multidimensionali possono avere tre o più indici nell’array. Sebbene si stia accedendo all’array con più di un indice di riferimento, i dati vengono comunque archiviati linearmente in memoria.
Gli array sono diversi dalle altre strutture di dati, come gli elenchi collegati. Un elenco collegato è una struttura dinamica che può crescere e rimpicciolirsi durante l’esecuzione del programma. Per la maggior parte, gli array sono statici e la loro dimensione non può essere modificato durante l’esecuzione. Ciò significa che un array limita la quantità di elementi che possono essere memorizzati durante il runtime. Al contrario, un array consente un accesso completamente casuale agli elementi che contiene, a differenza di un elenco concatenato che deve essere attraversato in sequenza per raggiungere gli elementi in mezzo e alla fine.
La velocità di una struttura dati array la rende perfettamente adatta per l’uso in altri tipi di dati più complessi, come le tabelle hash.La prevedibilità degli indirizzi di memoria degli elementi può essere utilizzata anche per implementare algoritmi di splicing array molto veloci che può spostare rapidamente i dati. Ciò è particolarmente utile per operazioni di ordinamento come i bubble sort che sono perfettamente adatti per l’uso con gli array.