2012
2012
Sei collegato come utente non registrato
Riepilogo dell'insegnamento: Algoritmi e Strutture Dati
Informazioni generali
Corso di Laurea Informatica Percorso Percorso Linguaggi e Sistemi
CFU 9 Università TORINO
Ore di didattica frontale per CFU 10 Settore Scientifico Disciplinare INF/01
   

9 cfu così ripartiti nelle aree:

  • 9 CFU nell'area B - Algoritmi

Sillabo dell'insegnamento

  • B - Algoritmi
    • * A - Algoritmi fondamentali
      Algoritmi sui grafi: ordinamento topologico, componenti fortemente connesse, minimo albero di copertura, cammini minimi.
    • * A - Algoritmi fondamentali
      Algoritmi di ordinamento, algoritmo greedy "activity selector", algoritimo greedy per i codici di Huffmann, calcolo della distanza tra stringhe.
    • * SDF - Strutture di Dati Fondamentali
      Rappresentazione dei grafi, visite in ampiezza e profondita'.
    • * SDF - Strutture di Dati Fondamentali
      Realizzazione di strutture dati (array, lista concatenata, albero binario di ricerca, albero AVL, tabella hash, heap, Union-Find).
    • * SDF - Strutture di Dati Fondamentali
      Realizzazione, anche utilizzando la libreria standard Java, di tipi di dati astratti (Pila, Coda, Lista, Insieme, Bag, Mappa, Coda con priorita').
    • TAPA - Tecniche fondamentali di Analisi e Progetto di Algoritmi
      Metodi di risoluzione di problemi e progetto di algoritmi: algoritmi Divide-et-Impera, algoritmi Greedy, cenni alla programmazione dinamica.
    • TAPA - Tecniche fondamentali di Analisi e Progetto di Algoritmi
      Analisi di algoritmi: Complessita' (Analisi nel caso peggiore e nel caso medio, Ordine di grandezza delle funzioni, Notazione asintotica). Le equazioni di ricorrenza per esprimere la complessita' degli algoritmi ricorsivi: metodi di soluzione.
    • TAPA - Tecniche fondamentali di Analisi e Progetto di Algoritmi
      Analisi e progettodi algoritmi: Correttezza (Precondizioni e postcondizioni, Invarianti di ciclo, Correttezza degli algoritmi ricorsivi). Concetto di tipo di dato astratto e sua realizzazione in linguaggi imperativi tipati (come C) e in linguaggi imperativi tipati object-oriented class-based (come Java).
    • * A - Algoritmi fondamentali
      Realizzazione dei grafi utilizzando il linguaggio Java.

(*) Le sottoaree con asterisco sono quelle che il GRIN ritiene essenziali