Offerta Didattica
INFORMATICA
ALGORITMI E STRUTTURE DATI
Classe di corso: L-31 - Scienze e tecnologie informatiche
AA: 2017/2018
Sedi: MESSINA
SSD | TAF | tipologia | frequenza | moduli |
---|---|---|---|---|
INF/01 | Caratterizzante | Libera | Libera | No |
CFU | CFU LEZ | CFU LAB | CFU ESE | ORE | ORE LEZ | ORE LAB | ORE ESE |
---|---|---|---|---|---|---|---|
9 | 9 | 0 | 0 | 72 | 72 | 0 | 0 |
LegendaCFU: n. crediti dell’insegnamento CFU LEZ: n. cfu di lezione in aula CFU LAB: n. cfu di laboratorio CFU ESE: n. cfu di esercitazione FREQUENZA:Libera/Obbligatoria MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli ORE: n. ore programmate ORE LEZ: n. ore programmate di lezione in aula ORE LAB: n. ore programmate di laboratorio ORE ESE: n. ore programmate di esercitazione SSD:sigla del settore scientifico disciplinare dell’insegnamento TAF:sigla della tipologia di attività formativa TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio
Obiettivi Formativi
I principali obiettivi del corso sono: - analizzare le principali tecniche di progettazione degli algoritmi - classificare, analizzare, progettare ed implementare algoritmi - valutare i costi in termini di efficienza computazionale - giungere al miglior compromesso tra esigenze conflittuali (costo, semplicità, efficienza)Learning Goals
The main objectives of the course are: - analize the main techniques for algorithm design - classify, analize, design and implement algorithms - evaluate costs in terms of computational efficiency - choose and implement suitable data structures - make the best compromise among conflicting requirements (cost, simplicity, efficiency)Metodi didattici
Lezioni frontali, svolgimento di esercitazioni in aula e a casaTeaching Methods
Frontal lectures, discussions of exercises, homeworksPrerequisiti
- Conoscenza di un linguaggio di programmazione - Conoscenza delle strutture dati fondamentali - Conoscenza del calcolo infinitesimalePrerequisites
- Knowledge of a programming language - Knowledge of fundamental data structures - Knowledge of infinitesimal calculusVerifiche dell'apprendimento
Prova scritta + colloquio orale (facoltativo)Assessment
Written test + oral examination (optional)Programma del Corso
- Introduzione agli algoritmi - Modelli di calcolo e metodologie di analisi - Algoritmi di Ordinamento - Strutture dati elementari - Alberi binari di ricerca - Tecniche avanzate di analisi e progettazione - Strutture dati avanzate - Algoritmi su grafiCourse Syllabus
- Introduction to algorithms - Calculus models and analysis methods - Sorting algorithms - Elementary data structures - Binary search trees - Advanced design and analysis techniques - Advances data structures - Graph algorithmsTesti di riferimento: Allen Downey
Pensare in Python – Come pensare da Informatico
Seconda Edizione, Versione 2.2.16
Cay Horstmann, Rance D. Necaise
Python for everyone
(2014) Wiley
David Beazley, Brian K. Jones
Python Cookbook
O’Reilly, Third Edition
Cormen, Leiserson, Rivest, Stein
Introduzione agli Algoritmi e Strutture Dati
Terza Edizione
Goodrich, Tamassia, Goldwasser
Data Structures and Algorithms in Python
(2014) Wiley
Esami: Elenco degli appelli
Elenco delle unità didattiche costituenti l'insegnamento
ALGORITMI E STRUTTURE DATI
Docente: GIACOMO FIUMARA
Orario di Ricevimento - GIACOMO FIUMARA
Giorno | Ora inizio | Ora fine | Luogo |
---|---|---|---|
Lunedì | 11:30 | 13:30 | Edificio principale dell'ex facoltà di Scienze MM. FF. NN. (secondo piano), blocco dell'ex direzione del Dipartimento di Matematica. Prenotarsi mediante email |
Mercoledì | 11:30 | 13:30 | Edificio principale dell'ex facoltà di Scienze MM. FF. NN. (secondo piano), blocco dell'ex direzione del Dipartimento di Matematica. Prenotarsi mediante email |
Note: