Lista (informatica)

In informatica, una lista (in inglese list) è una struttura dati astratta e dinamica (la memoria usata non è necessariamente fisicamente contigua) che denota una collezione omogenea o container di dati. L'accesso a un elemento della struttura avviene direttamente solo al primo elemento della sequenza; per accedere a un qualunque elemento, occorre scandire sequenzialmente tutti gli elementi che lo precedono; è una struttura dati dinamica poiché può cambiare di dimensione grazie alle operazioni di inserimento ed eliminazione di elementi, diversamente al caso degli array standard.

Operazioni fondamentali

Le operazioni fondamentali offerte da una Lista sono le seguenti:

Implementazione

Esempio di lista implementata mediante strutture collegate

Principalmente, vi sono due implementazioni delle Liste. Una utilizza come appoggio gli array, l'altra le strutture collegate; i due approcci si differenziano per le prestazioni offerte. In particolare, un ArrayList offrirà un accesso random al costo di O(1), mentre una LinkedList offrirà un costo O(n); dall'altro lato un inserimento su un ArrayList potrebbe costare O(n) (nel caso di ridimensionamento dell'array), mentre su una LinkedList costerà sempre O(1).

Algoritmi di gestione (iterativi)

Algoritmi di gestione (ricorsivi)

Tipi di lista

Note

  1. ↑ Vito Lavecchia, Definizione e di Lista in informatica con implementazione in C, su Informatica e Ingegneria Online, 7 luglio 2017. URL consultato il 17 giugno 2024.

Voci correlate

Altri progetti

Collegamenti esterni

Controllo di autoritàLCCN (EN) sh85077455 · GND (DE) 4783888-7 · J9U (EN, HE) 987007531493105171
  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica