11929 - ALGORITMI E STRUTTURE DATI (A-L)

Scheda insegnamento

  • Docente Luciano Margara

  • Crediti formativi 12

  • Modalità di erogazione In presenza (Convenzionale)

  • Lingua di insegnamento Italiano

  • Orario delle lezioni dal 26/02/2018 al 08/06/2018

Anno Accademico 2017/2018

Conoscenze e abilità da conseguire

Al termine del corso, lo studente conosce: - gli algoritmi per risolvere problemi computazionali di base su strutture dati elementari; - le tecniche di base per calcolare il costo computazionale degli algoritmi; - le classi di complessità computazionale P, NP e NP-hard. In particolare, lo studente è in grado di: - progettare algoritmi efficienti per risolvere semplici problemi computazionali; - stimare in ordine di grandezza il costo computazionale degli algoritmi; - analizzare la complessità computazionale di problemi computazionali di base; - dare una valutazione circa l'efficienza e la correttezza di un algoritmo; - elaborare e presentare un progetto per la risoluzione di problemi computazionali di base.

Programma/Contenuti

- matematica discreta elementare per calcolare gli ordini di grandezza; - Algoritmi di ordinamento; - Mediano e selezione; - Strutture dati elementari: pile, code, alberi, grafi - algoritmi di visita su grafi - algoritmi di base su grafi -classi P e NP -problemi NP-Hard

Testi/Bibliografia

Introduzione agli Algoritmi e Strutture Dati. Terza Edizione

T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein

McGraw-Hill

Metodi didattici

Lezioni ed esercitazioni frontali

 

Modalità di verifica dell'apprendimento

Esame scritto e orale. Progetto.

 

Strumenti a supporto della didattica

- Lucidi e Libro di testo


Orario di ricevimento

Consulta il sito web di Luciano Margara