Anno accademico 2009/2010 - lauree triennali

[ELENCO COMPLETO]
  1. Intelligenza artificiale 1.
  2. Istituzioni di economia.
  3. Laboratorio di algoritmi e strutture di dati.
  4. Laboratorio di elettromagnetismo.
  5. Laboratorio di elettronica.
  6. Laboratorio di fisica (1°, 2° 3° unità).
  7. Laboratorio di fisica ambientale e terrestre.
  8. Laboratorio di fisica moderna.
  9. Laboratorio di fondamenti dell´informatica.
  10. Laboratorio di ottica.
  11. Logica e teoria degli insiemi.
  12. Matematica finanziaria.
  13. Meccanica analitica.
  14. Meccanica quantistica.
  15. Meccanica razionale.
  16. Metodi e modelli matematici per le applicazioni.
  17. Metodi computazionali della fisica.

57. Laboratorio di fondamenti dell'informatica

prof.ssa Cristina Avrella


OBIETTIVO DEL CORSO

Il corso si propone di sviluppare e consolidare le capacità di progettazione di algoritmi
e di implementazione di programmi. Utilizzando criteri di progettazione dal generale
al particolare (top-down), saranno analizzati, anche dal punto di vista dell'efficienza
computazionale, alcuni algoritmi fondamentali a partire da quelli relativi alle tecniche di
gestione degli array, fino ad arrivare ad alcuni dei più noti algoritmi di merging, sorting e
searching interno e ad alcuni algoritmi ricorsivi.

PROGRAMMA DEL CORSO

Definizione di algoritmo - complessità computazionale di un algoritmo - complessità
computazionale asintotica - complessità computazionale asintotica in algoritmi iterativi
e ricorsivi - efficienza di un algoritmo.

Analisi ed implementazione dei seguenti algoritmi
Gestione degli array

- Inversione dell'ordine di un array
- ricerca del valore massimo in un array
- eliminazione dei doppi di un array ordinato
- partizione di un array
Merge
Sorting
- Selection sort
- Bubble sort
- Insertion sort
- Shell sort
- Quick sort iterativo e ricorsivo
- Merge Sort
- Counting sort
Searching
- Ricerca binaria iterativa
- ricerca binaria ricorsiva
- Ricerca calcolata

BIBLIOGRAFIA
Knuth - Donald Ervin, Fundamental algorithms, Addison Wesley, 1977.
Dispense del corso fornite a lezione.

DIDATTICA DEL CORSO
Le lezioni si terranno nelle aule di informatica e saranno organizzate in una parte teorica, in
cui il docente illustrerà ed analizzerà gli algoritmi, ed una seconda pratica in cui si richiederà allo
studente l'implementazione autonoma in linguaggio C degli stessi.

METODO DI VALUTAZIONE
L'esame è costituito da una prova scritta in cui sarà richiesta l'implementazione di un generico
algoritmo e da una successiva prova orale di analisi sia dell'algoritmo prodotto nella prova precedente,
sia degli algoritmi trattati durante il corso.
La presenza assidua alle lezioni consentirà allo studente di sostituire la prova scritta con un
approfondimento sviluppato durante lo svolgimento del corso.

AVVERTENZE
La Prof.ssa Cristina Avrella riceve gli studenti su richiesta al termine delle lezioni nel suo studio.



[ Facoltà di Scienze ]