Laboratorio di Algoritmi e Strutture Dati
Corso di laurea in informatica


logo università milano
NOTA BENE: questo sito fa riferimento al Laboratorio di Algoritmi e Strutture Dati fino all'anno accademico 2015/2016. A partire dall'anno accademico 2016/2017 il programma del corso e le modalità d'esame subiscono probabilmente delle variazioni, si veda la nuova pagina web del laboratorio. Le informazioni attualmente contenute su questo sito sono quindi da considerasi valide solo fino all'appello di settembre 2016.

Laboratorio di Algoritmi e Strutture Dati

Docente: Violetta lonati

Il corso Algoritmi e strutture dati / laboratorio è rivolto agli studenti del secondo anno del corso di laurea in informatica ed ha l'obiettivo di presentare le strutture dati e gli algoritmi di base a diversi livelli di astrazione, nonchè consentire l'acquisizione delle principali metodologie di progettazione e analisi degli algoritmi. Il corso si compone di due moduli svolti in parallelo:

  • modulo Algoritmi e strutture dati
  • modulo Laboratorio di algoritmi e strutture dati

Questa pagina descrive solo il modulo di laboratorio per l'edizione diurna, mentre il modulo di teoria (sempre dell'edizione diurna), è tenuto dal Prof. Goldwurm ed ha una sua propria pagina web.

L'obiettivo specifico del Laboratorio è di familiarizzare con le tecniche algoritmiche attraverso l'implementazione concreta di algoritmi in un linguaggio di programmazione reale. Il linguaggio scelto è il C, ma è importante sottolineare che non si tratta di un corso sul linguaggio C, nè tanto meno di un corso di programmazione; si assume infatti che gli studenti abbiano già familiarità con i concetti fondamentali della programmazione e conoscano almeno un linguaggio (tipicamente Java, visto nel corso del primo anno Programmazione / laboratorio). Pertanto, solo la prima parte del corso sarà dedicata all'insegnamento delle caratteristiche peculiari del C, senza perdersi troppo sui dettagli sintattici, mentre nella seconda parte del corso il linguaggio sarà usato come strumento per illustrare e implementare strutture dati ed algoritmi.