ALGORITMICA
Prof. Paolo Ferragina
Laurea di primo livello in INFORMATICA-UMANISTICA (codice AA585)
Orario del
Corso
Giorno | Orario
| Aula |
Lunedì
| 16.15 - 17.45 |
Magna Matteucci |
Materdì
| 16.15 - 17.45 |
Magna Matteucci |
Ricevimento | Subito dopo la lezione | ---
|
Modalità di
Esame
L'esame di Algoritmica consiste di una
prova scritta (esercizi e domande di teoria) e di una prova
orale. Durante la prova scritta gli studenti NON possono
consultare i propri libri e appunti. Coloro che superano la prova scritta
possono sostenere la prova orale soltanto nello stesso appello.
Prossimi Appelli di esame : consultare il portale Omero.
Libri di Testo
Risulta quanto mai difficile parlare formalmente di Algoritmi senza disporre di una sufficiente "base matematica". Pertanto in questo corso di Algoritmica per InformaticaUmanistica cercheremo di lasciare da parte gli aspetti formali di "analisi degli algoritmi" e ci concentreremo sui principi e sulle tecniche di progettazione, accennando alla loro complessità.
Date queste premesse, per quest'anno non mi è stato possibile identificare un libro di testo che trattasse di Algoritmica in modo preciso ma "non formale". Qui di seguito si "suggerisce" un libro di testo che riporta (quasi) tutti gli pseudo-codici degli algoritmi che discuteremo in classe. Il libro però è molto tecnico e quindi poco appropriato per la laurea in InformaticaUmanistica. Lo seguiremo per ciò che concerne la formalizzazione degli pseudo-codici degli algoritmi; gli studenti potranno d'altra parte utilizzare un qualunque altro libro per ciò che riguarda la discussione delle proprietà e della complessità di questi algoritmi.
Vista la novità del corso, il suo programma verrà definito man mano che procederemo con le lezioni, pertanto INVITO gli studenti a seguirle con attenzione e assiduamente!
Gli studenti non frequentanti devono tenersi aggiornati controllando la pagina del corso per eventuali altre dispense che potranno essere rese disponibili. In ogni caso, devono far riferimento al libro di testo. Il programma è lo stesso degli studenti frequentanti.
Strutture di Dati e Algoritmi, P. Crescenzi e G. Gambosi e R. Grossi, Addison-Wesley Pearson Education, 2006.
Materiale didattico
aggiuntivo: - Per le nozioni basilari di programmazione
ripassare il testo: V. Ambriola e G. Costa, 4
passi in JavaScript, 2007.
- Alcune pagine di concetti basilari su funzioni matematiche utili ai fini
dell'analisi degli algoritmi che vedremo in classe.
- Alcune pagine relative al problema della generazione delle combinazioni e delle permutazioni.
- Alcune pagine contenenti lo pseudocodice di alcuni degli algoritmi che vedremo in classe e relative note.
Testi di esame e soluzioni
Programma del corso