Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
INGEGNERIA
INGEGNERIA DELL'INFORMAZIONE
Insegnamento
DATI E ALGORITMI 1 (Ult. due numeri di matricola da 34 a 66)
IN04111234, A.A. 2012/13

Informazioni valide per gli studenti immatricolati nell'A.A. 2011/12

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea in
INGEGNERIA DELL'INFORMAZIONE (Ord. 2011)
IN0513, ordinamento 2011/12, A.A. 2012/13
Penult1502
porta questa
pagina con te
Crediti formativi 9.0
Tipo di valutazione Voto
Denominazione inglese DATA STRUCTURES AND ALGORITHMS 1
Obbligo di frequenza No
Lingua di erogazione ITALIANO
Sede PADOVA
Corso singolo NON è possibile iscriversi all'insegnamento come corso singolo
Corso a libera scelta È possibile utilizzare l'insegnamento come corso a libera scelta

Docenti
Responsabile GIOVANNI DE POLI

Mutuazioni
Codice Insegnamento Responsabile Corso di studio
IN04111234 DATI E ALGORITMI 1 (Ult. due numeri di matricola da 34 a 66) GIOVANNI DE POLI IN0508
IN04111234 DATI E ALGORITMI 1 (Ult. due numeri di matricola da 34 a 66) GIOVANNI DE POLI IN0507
IN04111234 DATI E ALGORITMI 1 (Ult. due numeri di matricola da 34 a 66) GIOVANNI DE POLI IN0512

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
BASE Matematica, informatica e statistica ING-INF/05 9.0

Modalità di erogazione
Periodo di erogazione Primo semestre
Anno di corso II Anno
Modalità di erogazione frontale

Organizzazione della didattica
Tipo ore Crediti Ore di
Corso
Ore Studio
Individuale
Turni
LEZIONE 9.0 72 153.0 Nessun turno

Calendario
Inizio attività didattiche 01/10/2012
Fine attività didattiche 26/01/2013

Commissioni d'esame
Commissione Dal Al Membri
18 A.A. 2017/2018 01/10/2017 15/03/2019 PIETRACAPRINA ANDREA ALBERTO (Presidente)
VANDIN FABIO (Membro Effettivo)
DALPASSO MARCELLO (Supplente)
NANNI LORIS (Supplente)
PUCCI GEPPINO (Supplente)
17 A.A. 2017/2018 01/10/2017 15/03/2019 DALPASSO MARCELLO (Presidente)
PIETRACAPRINA ANDREA ALBERTO (Membro Effettivo)
NANNI LORIS (Supplente)
VANDIN FABIO (Supplente)
16 A.A. 2016/2017 01/10/2016 15/03/2018 VANDIN FABIO (Presidente)
PIETRACAPRINA ANDREA ALBERTO (Membro Effettivo)
COMIN MATTEO (Supplente)
DALPASSO MARCELLO (Supplente)
FANTOZZI CARLO (Supplente)
NANNI LORIS (Supplente)
PINI MARIA SILVIA (Supplente)
PIZZI CINZIA (Supplente)
PUCCI GEPPINO (Supplente)
15 A.A. 2015/2016 01/10/2015 15/03/2017 VANDIN FABIO (Presidente)
AVANZINI FEDERICO (Membro Effettivo)
DALPASSO MARCELLO (Supplente)
14 A.A. 2014/2015 01/10/2014 15/03/2016 DALPASSO MARCELLO (Presidente)
DE POLI GIOVANNI (Membro Effettivo)
PIETRACAPRINA ANDREA ALBERTO (Supplente)
13  01/10/2013 15/03/2015 DALPASSO MARCELLO (Presidente)
DE POLI GIOVANNI (Membro Effettivo)
PIETRACAPRINA ANDREA ALBERTO (Supplente)
PUCCI GEPPINO (Supplente)
12 2012 01/10/2012 30/09/2013 PIETRACAPRINA ANDREA ALBERTO (Presidente)
DE POLI GIOVANNI (Membro Effettivo)
DALPASSO MARCELLO (Supplente)
PUCCI GEPPINO (Supplente)
11 2012 01/10/2012 30/09/2013 DE POLI GIOVANNI (Presidente)
PIETRACAPRINA ANDREA ALBERTO (Membro Effettivo)
DALPASSO MARCELLO (Supplente)
10 2012 01/10/2012 30/09/2013 DALPASSO MARCELLO (Presidente)
PIETRACAPRINA ANDREA ALBERTO (Membro Effettivo)
DE POLI GIOVANNI (Supplente)

Syllabus
Prerequisiti:
Risultati di apprendimento previsti: Il corso ha l'obiettivo di presentare in forma sistematica le metodologie di progetto e di analisi di algoritmi e strutture dati efficienti, nonché la loro realizzazione nell'ambito del paradigma di programmazione orientato agli oggetti (nello specifico, in linguaggio Java)
Contenuti: - Programmazione orientata agli oggetti in Java (richiami), classi, interfacce, ereditarietà, polimorfismo statico e dinamico, programmazione generica, documentazione del software.
Tecniche di programmazione orientata agli oggetti: adattatore, iteratore.

- Specifica di algoritmi: modello di calcolo, problema computazionale, algoritmo, strategia "divide et impera". Analisi di algoritmi: elementi di calcolo combinatorio e asintotico, ricorrenze.

- Alberi: definizioni, proprietà, algoritmi di attraversamento. Alberi binari. Code con priorità e heap.

- Mappe e tabelle hash. Dizionari.

- Alberi di ricerca: definizioni e casi particolari. Alberi binari di ricerca; alberi AVL; alberi (2,4), splay trees, red-black tres.

- Algoritmi di ordinamento e selezione. Limite inferiore al problema dell'ordinamento basato su confronti. Insiemi disgiunti.
Pattern matching tra stringhe. Alberi trie.

- Grafi: definizioni, proprietà, strutture dati per le loro rappresentazione. Algoritmi pr l'attraversamento dei grafi; minimim spanning tree; albero dei cammini minimi; chiusura transitiva e ordinamento topologico.

- Tecniche di programmazione dinamica e greedy. Analisi ammortizzata.
Programma:
Testi di riferimento: M.T. Goodrich, R. Tamassia, Data Structures and Algorithms in Java, 5th ehdition.. New York: John Wiley & Sons, 2010. sito web del corso in moodle.dei.unipd.it
Note ai testi di riferimento: altro materiale didattico nel sito web del corso in moodle.dei.unipd.it
Metodi didattici: Lezione frontale e laboratorio individuale
Metodi di valutazione: Prove di accertamento intermedie, opzionali.
Prova finale scritta di teoria e di programmazione + colloquio orale
Altro: