L'informatica ha subito un’evoluzione estremamente rapida dai suoi albori ai giorni d’oggi. Ciò ha prodotto notevoli benefici alla qualità della vita ma ha anche creato problemi legati all'affidabilità dei sistemi informatici. Spesso infatti le tecniche di progetto adottate si sono rivelate inadeguate alla complessità dei problemi affrontati. Da più parti si è individuata, tra le cause principali della scarsa affidabilità dei sistemi informatici, la mancanza di solidi principi teorici su cui basare le tecniche di progettazione. Il corso di algoritmi e principi dell'informatica ha lo scopo di colmare questa lacuna affrontando in maniera sistematica i problemi fondamentali dell’informatica e mettendo in evidenza come un approccio rigoroso e basato sui fondamenti teorici della disciplina abbia grande rilevanza nelle applicazioni pratiche. Soprattutto il corso intende sviluppare l'attitudine ad affrontare problemi nuovi e non ben precisati e ricavarne un modello preciso e adatto all'individuazione della miglior (o adeguata) soluzione.
i casi normali).
Conoscenza e comprensione | A seguito del superamento dell’esame lo studente conosce: - I principi e i modelli fondamentali del calcolo automatico. - I principi di base della progettazione e dell’analisi degli algoritmi e delle strutture dati. |
---|---|
Capacità di applicare conoscenza e comprensione | Attraverso le esercitazioni su problemi specifici, e a seguito del superamento dell’esame, lo studente acquisisce: - Capacità critica relativa all'uso, alla creazone e all'adattamento di modelli per il calcolo. - Capacità di applicare, adattare e valutare in situazioni pratiche algoritmi e strutture dati. |
Autonomia di giudizio | A seguito del superamento dell’esame lo studente è in grado di: - Scegliere ed eventualmente adattare i modelli di calcolo al problema che si sta considerando. - Scegliere ed eventualmente ideare opportune strutture dati e algoritmi per il problema che si sta considerando. |
Capacità di apprendimento | - Gli studenti saranno in grado di valutare in maniera critica modelli computazionali, algoritmi e strutture dati. - Gli studenti saranno in grado di creare nuovi modelli computazionali, nuovi algoritmi e nuove strutture dati. |
Primo modulo: Informatica teorica
1. I modelli dell'informatica
Secondo modulo: Informatica 3 / Algoritmi
3. Teoria della complessità
4. Strutture dati e algoritmi fondamentali
Il programma del corso richiede la conoscenza degli argomenti trattati nel corso di Fondamenti di Informatica. Inoltre, costituiscono prerequisito anche parte dei contenuti del corso di Logica e Algebra.
Di norma l’esame è esclusivamente scritto; il docente si riserva però la possibilità di approfondire e perfezionare la propria valutazione mediante opportune domande integrative in forma orale; durante lo scritto è permessa la consultazione dei testi. Gli appelli d'esame sono svolti secondo le regole della scuola. Per il corso integrato gli appelli saranno basati su una prova unica. In caso di valutazione gravemente insufficiente, lo studente non potrà partecipare all'appello successivo.