Recupero della prova d'esame dell'1.2.2012 a causa del maltempo. La prova di esame scritto si svolgerà alle ore 10:00 del 7.2.2012 in aula D; quella di laboratorio si svolgerà alle ore 14:00 del 7.2.2012 in aula H. Importante: tale recupero è riservato agli studenti iscritti alla prova dell'1.2 (nel calendario degli appelli della sezione didattica del sito www.di.unipi.it) ma impossibilitati a partecipare a causa del maltempo. Per eventuali chiarimenti, contattare il prof. Grossi via email.
Riunione per fissare il calendario orali. A parte i pochi che rientrano nel caso sopra, per tutti gli altri candidati l'appuntamento è fissato in data 6.2.2012 alle ore 09:00 presso il mio studio: lo scopo è quello di svolgere l'esame orale per chi vuole sostenerlo in giornata e fissare il calendario degli orali per chi vuole sostenerlo successivamente.
Docente: Roberto Grossi
Impegno: 12 CFU di cui 9 teoria/esercitazioni e 3 Laboratorio.
Ricevimento studenti | |||
---|---|---|---|
Grossi | ore | giorno | Stanza 361, Dipartimento di Informatica |
Il corso consiste ogni settimana di 3 lezioni di didattica frontale in aula e di 1 esercitazione in laboratorio nella quale le nozioni apprese in classe verranno sperimentate realizzando in C gli algoritmi corrispondenti.
Orario delle Lezioni | |||
---|---|---|---|
Giorno | Orario | Aula (Corso B) | Tipologia |
Lunedì | 9-11 | A | Teoria |
Martedì | 9-11 | A | Teoria |
Mercoledì | 9-11 | A | Teoria |
Giovedì | 9-11 | H | Laboratorio |
L'obiettivo del corso è quello di introdurre strutture dati e tecniche algoritmiche (di base) che consentano allo studente la risoluzione di problemi su sequenze, liste, alberi e grafi, in modo efficiente in tempo e/o spazio. Si discuteranno inoltre alcune tecniche analitiche per la valutazione delle prestazioni degli algoritmi, o delle limitazioni inerenti del calcolo.
Il corso prevede una intensa attività di laboratorio che porterà gli studenti a sperimentare in linguaggio C le nozioni e le tecniche algoritmiche apprese in classe.
L'esame consiste di tre prove:
IMPORTANTE per gli studenti della Classe 26: possono sostenere la sola prova scritta di AlL
come scritto dell'esame di Algoritmica (vecchio corso) e devono contattare la prof. Pagli per la verbalizzazione; la prova di laboratorio LLS
dovrà essere svolta con il dott. Gervasi.
Un centinaio di esercizi sono reperibili presso le vecchie pagine del corso
http://www.di.unipi.it/~grossi/ALG/
http://www.di.unipi.it/didadoc/asd1/page6.html
Appelli di esame | Note |
11.01.2012 ore 9:00 (scritto) | 11.01.2012 ore 15:00 (prova di laboratorio in aula H) |
01.02.2012 ore 9:00 (scritto) | 01.02.2012 ore 15:00 (prova di laboratorio in aula M) |
Emacs
), e il compilatore gcc
, sono sufficienti per apprendere e testare le varie nozioni algoritmiche e di coding che verranno discusse in Laboratorio. I programmatori più esperti potranno eventualmente utilizzare un framework di sviluppo come Eclipse esteso con il suo plug-in Eclipse C/C++ Development Tooling. Per chi si trova a operare sotto Windows suggeriamo il compilatore e il debugger disponibili con MinGW, e consigliamo di istallare i 3 componenti suddetti secondo la sequenza: Eclipse-MinGW-CDevTool. Il consiglio è però quello di adoperare la combinazione minimale editor+gcc
al fine di non perdersi nei meandri e nelle opzioni dei vari tools (non necessari per AIL), per concentrarsi soltanto sugli aspetti di coding degli algoritmi.(ancora non attivo)
Data | Argomento | Rif. Biblio |
---|---|---|
07/3/11 | Laboratorio: Basi del C e di compilazione sotto Unix. Struttura base del programma, blocchi condizionali e cicli, input/output, array. | Cap. 2-3, 7.1-7.4 di [KR]. Lucidi} |
08/3/11 | Laboratorio: Ripasso e esercizi su funzioni e puntatori. | Sez. 4.1-4.5 e 5.1-5.5 di [KR]. Lucidi |
10/3/11 | Laboratorio: Ripasso e esercizi su passaggio dei parametri. | Lucidi |
10/3/11 | Laboratorio: Ripasso e esercizi su allocazione dinamica della memoria e gestione di stringhe. | Lucidi |
24/3/11 | Laboratorio: Redirezione dell'input e timing di un programma. Problema del sottoarray di somma massima. | Test Soluzioni |
31/3/11 | Laboratorio: Insertion Sort su Interi e Stringhe. Per casa: Implementare Merge Sort e Ricerca Binaria. | Esercizi Soluzioni |
07/4/11 | Laboratorio: QuickSort su Interi e Stringhe. | Esercizi Soluzioni |
14/4/11 | Laboratorio: Qsort su Interi e Stringhe. | Esercizi Soluzioni |
28/4/11 | Laboratorio: Le struct in C e esercizi con le liste. | Lucidi Esercizi |
12/5/11 | Laboratorio: Alberi Binari di Ricerca. | Esercizi Soluzioni |
19/5/11 | Laboratorio: Funzioni Hash. | Esercizi Esercizi Aggiuntivi Liste Soluzione |
26/5/11 | Laboratorio: Simulazione della prova di esame. | Testo |