Per visualizzare la struttura dell'insegnamento a cui questo modulo appartiene, consultare organizzazione dell'insegnamento
Nel corso di laboratorio di Algoritmi e Strutture Dati vengono raffinate le conoscenze dello studente circa la pratica della programmazione ad oggetti, soprattutto nell'implementazione di algoritmi e strutture dati avanzate. Le lezioni sono svolte in linguaggio Java di cui si assume una conoscenza di base.
Lezione 1. Introduzione al corso. Richiamo delle principali nozioni del linguaggio JAVA. Introduzione a javadoc e alla gestione delle eccezioni.
Lezione 2. Uso del meccanismo di interfaccia. Uso dell'interfaccia Comparable. Implementazione degli algoritmi di ordinamento InsertionSort e SelectionSort
Lezione 3. Implementazione di QuickSort e MergeSort. Tecniche di confronto di implementazioni. Confronto tra diverse implementazioni di algoritmi di ordinamento.
Lezione 4. Implementazione delle ADT Lista, Coda e Pila.
Lezione 5. Implementazione dell'ADT Albero e Albero di ricerca binario.
Lezione 6. Implementazione di un algoritmo di programmazione dinamica: ricerca massima sottosequenza comune (MaxSSC).
Lezione 7. Implementazione di un algoritmo greedy: algoritmo di Kruskal
Lezione 8. Esercitazione in vista dell’esame
L'esame e' articolato su due parti relative al modulo di teoria e al modulo di laboratorio. La parte di teoria consiste in un'esercitazione scritta di due ore e viene superata solo se la votazione ottenuta e' superiore o uguale a 18/30. La parte di laboratorio consiste in un'esercitazione scritta di un'ora e viene superata solo se la votazione ottenuta e' superiore o uguale a 18/30.
L'esame si intende superato se il candidato ha superato sia la prova relativa al modulo di teoria sia quella relativa al modulo di laboratorio. Il voto (unico) finale viene calcolato come media tra i voti dei due moduli di teoria e laboratorio pesati rispettivamente 4/5 e 1/5.
******** CSS e script comuni siti DOL - frase 9957 ********p>