Esercitazioni di Algoritmi e Strutture Dati - A.A. 2012/2013

Lezione 1, 28/02/2013

  • Introduzione al Linguaggio Java: caratteristiche del linguaggio; tipi e variabili; statements, espressioni e condizioni; accenno a I/O, eccezioni, classi; array e Vector, semplici esempi di programmi.
  • Slides, Tutorial, Esercizi

Lezione 2, 07/03/2013

  • Implementazione Java e discussione degli algoritmi di ricerca lineare e binaria (ricorsiva e iterativa) e degli algoritmi di ordinamento Selection Sort e Insertion Sort.
  • Es1, Es2, Selection Sort, Insertion Sort, Esercizi

Lezione 3, 13/03/2013

  • Richiamo delle definizioni di Ο, Ω e θ, proprietà, classificazione, osservazioni, utilizzo dei limiti e della regola di De l'Hôpital. Esercizi dal 2.1 al 2.11 del libro.
  • Merge Sort, Counting Sort, Esercizi

Lezione 4, 21/03/2013

  • Correzione esercizio 2.1 del libro; funzioni di costo definite per ricorrenza: esercizi dal 2.12 al 2.15 del libro.
  • Es3, Esercizi

Lezione 5, 04/04/2013

Lezione 6, 11/04/2013

  • Esercitazioni su strutture dati: liste e code (es. 4.1, 4.8, 4.11), alberi (es. 5.4, 5.12) e tabelle hash (es. 7.2).
  • Pigeonhole Sort, Esercizi

Lezione 7, 18/04/2013

  • Esercitazioni su tabelle hash (es. 7.10), grafi (es. 9.3 e 9.11), heap (es. 10.4 e altro)
  • Esercizi

Lezione 8, 24/04/2013

  • Esercitazioni su algoritmo di Dijkstra (es. 11.1), divite et impera (es. 12.4, 12.11), programmazione dinamica (es. 13.6) e algoritmi greedy (es. su Minimum Spanning Tree)
  • Esercizi

Lezione 9, 02/05/2013

  • Esercitazioni su ricerca locale (es. 15.4 e 15.6) e backtracking (es. 16.4 e 16.6)
  • Backtracking, Esercizi

Esami passati