Sia le liste che i dizionari sono strutture molto utilizzate nei linguaggi di programmazione tra cui VB.NET e C#. Entrambe le strutture possono essere considerate come degli insiemi che devono essere riempiti da oggetti da poter utilizzare.
Il termine “lista” indica un insieme finito di dati nel quale vige un ordinamento, ossia un insieme per il quale è stabilita una corrispondenza biunivoca tra i suoi elementi e l’insieme dei primi n numeri naturali. In base a questa legge, è possibile stabilire quale è il primo elemento di questo insieme e quale l’ultimo ed è inoltre possibile stabilire quale, tra due elementi qualsiasi dell’insieme, precede l’altro e quale segue. La caratteristica principale di una lista consiste l’accesso ai suoi elementi: infatti, l’accesso ad un elemento qualsiasi di una lista avviene tramite una ricerca sequenziale a partire dal primo elemento della lista per finire all’elemento considerato. Esempio semplicissimo di lista è un normale testo letterario: in questo caso, gli elementi che costituiscono l’insieme sono le singole parole e i segni di interpunzione, mentre l’ordinamento è definito dalla posizione fisica che gli elementi occupano nel testo.
I dictionary invece sono delle collezioni non ordinate di oggetti indicizzati tramite chiavi che permettono di risalire all’oggetto al quale esse fanno riferimento. Una grande differenza tra le strutture di list e dictionary e quella degli array sta nel fatto che nell’array deve essere specificato in partenza il numero di elementi che ne faranno parte, mentre nelle liste e nei dizionari gli elementi vengono aggiunti ed eliminati in maniera molto più agevole.
