Università degli studi dell'Insubria

PROGRAMMAZIONE MOD. B

A.A. di erogazione 2016/2017

Laurea triennale in MATEMATICA
 (A.A. 2016/2017)

Docenti

URSINO PIETRO
Anno di corso: 
1
Tipologia di insegnamento: 
Base
Settore disciplinare: 
INFORMATICA (INF/01)
Crediti: 
6
Ciclo: 
Secondo Semestre
Ore di attivita' frontale: 
48
Dettaglio ore: 
Lezione (48 ore)

• L'obiettivo del corso è quello di fornire allo studente competenze di base sulla rappresentazione delle principali strutture di dati e sui principali algoritmi per la loro gestione. Introduce inoltre alle tecniche per la valutazione della complessità computazionale di un algoritmo e di un problema. Il corso introduce gli studenti al linguaggio Java

Non sono previsti requisiti

• Contenuti e programma del corso:

Modulo A

Introduzione alla programmazione in Java:
- Variabili, costanti e tipi di dato elementare.
- Assegnamento e statement composto.
- Input/output di base.
- Espressioni e operatori.
- Strutture di controllo: selezione e cicli.
- Metodi e classi.
- Array.
- Introduzione alla ricorsione.

Modulo B

Basi Matematiche necessarie allo studio della Complessità.
Equazioni ricorsive e Teorema fondamentale.

Algoritmi di ordinamento:
- Definizione del problema e lower bound alla complessità del problema.
- Insertion sort - studio caso pessimo e caso medio.
- Merge sort - studio caso pessimo e caso medio.
- Heap sort - studio caso pessimo e caso medio.
- Quick sort - studio caso pessimo e caso medio.
- Random Quick sort.

Algoritmi di ordinamento Lineari.

Strutture dati elementari: Pile, Liste e Alberi.

• Modalità di verifica dell’apprendimento:
Lezioni frontali.

• Testi e materiale didattico

Modulo A
- Appunti del docente: disponibili sul portale della didattica.
- C. Thomas Wu: Java. Fondamenti di Programmazione. McGraw-Hill.

Modulo B
Thomas H Cormen, Charles E Leiserson, Ronald L Rivest, Clifford Stein, Introduction To Algorithms. MIT Press.

• Modalità di verifica dell’apprendimento:
Esiste il solo esame finale, che accerta l’acquisizione delle conoscenze e delle abilità attese tramite lo svolgimento di una prova scritta e una prova orale. Per essere ammessi a sostenere la prova orale è necessario ottenere nella prova scritta un punteggio minimo di 15 punti.