ALGORITMICA
Settore: INF/01 | Codice: 429AA | Crediti: 6 | Semestre: 2 |
Docenti: Levi Francesca |
Obiettivi di apprendimento
ConoscenzeConoscenza degli algoritmi di base dell'informatica e delle necessarie nozioni di matematica elementare
Modalità di verifica delle conoscenzeEsercitazioni, esame finale scritto e orale
CapacitàSaper scrivere e discutere semplici programmi Python
Modalità di verifica delle capacitàEsercitazioni, esame finale
ComportamentiProprietà di linguaggio e comprensione della terminologia matematica.
Modalità di verifica dei comportamentiEsercitazioni, esame finale
Prerequisiti
Conoscenza elementare del linguaggio Python.
Basi elementari di matematica e logica fornite dalla scuola superiore.
Indicazioni metodologiche
Vengono affiancate lezioni teoriche, pause di riflessione (domande) e attività pratiche (suggerite o svolte in classe). Ulteriori esercitazioni pratiche devono essere svolte a casa.
Programma
- Comunicazione, linguaggio e linguaggi.
- Algoritmi e calcolabilità.
- Introduzione alla complessità computazionale concreta.
- Tecniche di programmazione ricorsiva.
- Algoritmi di ricerca.
- Algoritmi di ordinamento.
- Ricerca in grafi finiti e infiniti.
- Non determinismo, problemi P e NP.
- Elaborazione di stringhe.
- Teoria dell'informazione e codici.
Bibliografia
Testo del corso
- F. Romani, Elementi di Algoritmica con esempi in Phyton. Pisa University Press, 2017
Il testo è disponibile presso le principali librerie di Pisa.
Testi di Approfondimento
- Dispense di Fabrizio Luccio (http://pages.di.unipi.it/luccio/)
- P. Crescenzi, L. Pagli, Problemi, algoritmi e coding. Zanichelli 2017.
- F. Luccio, P. Ferragina, Il Pensiero Computazionale. Dagli algoritmi al coding. Il Mulino, 2017.
- T. Cormen, C. Leiserson, R.I. Rivest, C. Stein, Introduzione agli algoritmi e strutture dati MIT Press, 1990
Non frequentanti
Non vi sono differenze di programma né di modalità di esame.
Modalità di esame
Scritto e orale
Fonte: ESSETRE e Portale esami