SITE TITLE

LOGO DIETI

Laboratorio di algoritmi e strutture dati

titolo insegnamento in inglese: Algorithm and data structures laboratory

Lingua: Italiano

Insegnamento: Laboratorio di algoritmi e strutture dati

Anno di corso: II

CFU: 6

SSD: INF/01

Ore di lezione: 48

Semestre: 2

Modulo: Nessuno

Codice: 13917

Obiettivi formativi:

Obiettivo del corso è familiarizzare lo studente con la progettazione e l'implementazione di algoritmi e strutture dati. In particolare si vuole dare allo studente la capacità di produrre codice chiaro, modulare ed efficiente attraverso i seguenti passi: analisi del problema, individuazione di una soluzione efficiente, stesura del codice, documentazione delle scelte effettuate e del codice prodotto.

Contenuti:
Dopo un richiamo del linguaggio di programmazione C e di alcune strutture dati di base, si procederà allo studio delle rappresentazioni, implementazioni di tipi di dati astratti (quali pile, alberi binari di ricerca e code a priorità), che siano indipendenti dal tipo dei dati in essi contenuti. Verranno illustrate le loro implementazioni tramite “callback” e puntatori void. Successivamente, si tratterà sistematicamente della rappresentazione e implementazione dei grafi e delle tecniche di visita associate, più alcuni algoritmi avanzati sui grafi come l'algoritmo di Dijkstra, quello di Bellman-Ford e una introduzione alle tecniche di visita euristica, in particolare l’algoritmo A*. L’obiettivo è quello di progettare e implementare gli algoritmi sui grafi in modo indipendente dalla rappresentazione concreta del grafo (sia essa tramite liste o matrici di adiacenza) con l’impiego di opportune “callback”.

Prerequisiti: Algoritmi e strutture dati I / Propedeuticità: Programmazione II

Modalità didattica: Lezioni frontali ed esercitazioni in laboratorio.

Materiale didattico: 

Libro di testo: T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein. “Introduzione agli algoritmi e strutture dati”  3/ed. 

Lucidi utilizzati per le lezioni frontali del corso

Modalità di esame: 

L'esame si articola in prova

Scritta e orale

 

 

 

     

 

 

 

 

 

 

 

 

 

 

 

In caso di prova scritta i quesiti sono

 

           

 

Altro

Sviluppo progetti

Docente (canale A-G): Benerecetti Massimo

Docente (canale H-Z): Murano Aniello