Page begin -
Logo DISCO
|
Go to the Highly accessible area
|
Go to the Content page
|
Go to the End of content
|
Go to the Main menu
|
Go to the Navigation Bar (location)
|
Go to the Navigation menu (tree)
|
Go to the Commands list
|
Go to the Further readings
|
Go to the Bottom Menu
|
Logo Ateneo
   
Education
Laboratorio di algoritmi e strutture dati

Docente: M. Antoniotti

Crediti: 6 CFU

Descrizione e Programma del Corso

Il corso, a partire dalle conoscenze acquisite nei corsi di Algoritmi e strutture dati, si concentra sugli aspetti e sui problemi specifici della realizzazione di algoritmi e di strutture dati nella pratica, servendosi del C come linguaggio di programmazione. Attenzione particolare è dedicata allo sviluppo di componenti software generiche e riutilizzabili.

Prerequisiti: Non si richiede nessuna conoscenza del C, ma si assume che lo studente abbia seguito o stia seguendo i corsi di programmazione e di algoritmi e strutture dati del primo e secondo anno.

Programma:

  • Fondamenti del linguaggio C
  • Tipi di dati astratti e realizzazione di strutture dati in C
  • Uso di librerie di funzioni
  • Disegno e realizzazione di una libreria di funzioni in C
  • Realizzazione di algoritmi classici per problemi di ordinamento, di trattamento di stringhe, algoritmi su alberi e grafi, tabelle di hashing.

Libro di testo: Robert Sedgewick, Algoritmi in C, terza edizione, Addison-Wesley.

Testi consigliati:

  • Kernighan, B. W., Ritchie D. M., Il linguaggio C, seconda edizione, Pearson Prentice-Hall, 2004.
  • Sedgewick, R., Algorithms in C, Part 5, third edition, Addison-Wesley, 2001.
  • Kernighan, B. W., Pike R., The Practice of Programming, Addison-Wesley, 1999.
  • R. Sedgewick, Algorithms in C, Part 1-4 (3rd edition), Addison-Wesley
  • R. Sedgewick, Algorithms in C, Part 5 (3rd edition), Addison-Wesley
  • R. Sedgewick, Algorithms in C++, Part 1-4 (3rd edition), Addison-Wesley
  • R. Sedgewick, Algorithms in C++, Part 5 (3rd edition), Addison-Wesley
  • B. W. Kernigham, D. M. Ritchie, The C Programming Language (2nd Edition), Prentice Hall
  • S. B. Lippman, J. Lajoie, B. E. Moo, C++ Primer (4th edition), Addison-Wesley
  • B. Stroustroup, The C++ Programming Language (3rd edition), Addison-Wesley
  • S. P. Harbison, G. L. Steele, C: A Reference Manual (5th edition), Prentice Hall
  • N. M. Josuttis, The C++ Standard Library: A Tutorial and Reference, Addison-Wesley

Non è necessario prenderli tutti, ma i manuali di C e C++ dovrebbero essere nella biblioteca di ogni informatico che si rispetti.

Modalità di esame: l'esame consiste nel disegno di un algoritmo e nella sua realizzazione in C. Di norma, il tempo concesso per lo svolgimento è di 7-10 giorni. La soluzione viene discussa in un colloquio (queste regole potrebbero variare in futuro).

Vai al sito web del corso

Further readings
(C) Copyright 2016 - Dipartimento Informatica Sistemistica e Comunicazione - Viale Sarca, 336
20126 Milano - Edificio U14
redazioneweb@disco.unimib.it - last update of this page 25/03/2011