Le strutture dati lineari

Le strutture dati lineari sono delle collezioni in cui gli elementi sono organizzati in sequenza, come
 
<A1, A2, ..., An>

Altri esempi:

e su cui sono definite varie operazioni, per 
  • inserire elementi
  • estrarre elementi
  • leggere elementi
  • eliminare elementi
  • cercare elementi
  • controllare se la sequenza è vuota
Vedremo vari tipi di strutture dati lineari, che saranno presentati come tipi di dati astratti, cioè come interfacce: le Pile, le Code e le Liste.

Ognuna di queste interfacce comprende un determinato insieme di operazioni (metodi astratti), con la relativa specifica informale (es. l'inserimento è possibile solo ad un estremo invece che in qualsiasi punto, analogamente per estrazione e lettura).

Una realizzazione di un tipo di strutture dati lineari è una classe Java tale che implementa la relativa interfaccia, quindi tale che

  • ogni sua istanza rappresenta una struttura dati di quel tipo;
  • le variabili di istanza permettono di memorizzare gli elementi della struttura dati (A1, A2, ..., An);
  • i metodi realizzano le operazioni proprie della struttura dati, rispettandone la specifica.