Lo studio delle strutture dati è stato da sempre identificato come argomento chiave nell'insegnamento dell'informatica. Tale ruolo centrale è pienamente giustificato, vista l'importanza che riveste l'efficienza di strutture dati e algoritmi nella gran parte dei sistemi informatici: dal Web ai sistemi operativi, dalle basi di dati ai sistemi di simulazione in vari ambiti scientifici. Questo libro, giunto alla sesta edizione inglese e considerato un autorevole punto di riferimento a livello internazionale, è stato progettato per essere di ausilio in un corso introduttivo di Algoritmi e strutture dati. Il percorso didattico parte dalle basi della programmazione in Java e della progettazione orientata agli oggetti, per proseguire con la presentazione di alcune strutture dati concrete, come gli array e le liste concatenate, e delle tecniche di base, come l'analisi degli algoritmi e la ricorsione; nella parte centrale del libro si procede a illustrare le strutture dati e gli algoritmi fondamentali, per concludere con una discussione relativa alla gestione della memoria.