Laboratorio di Algoritmi e Strutture Dati - AA 2020/21
Corso di laurea in informatica


logo università milano

Materiale didattico

Il materiale didattico a supporto del laboratorio di algoritmi e strutture dati verrà messo a disposizione su questo sito. Indicativamente, il materiale sarà raggruppato per moduli settimanali.

Slide su C

Nel corso delle prime settimane di lezione verra presentato il linguaggio e le sue caratteristiche fondamentali. Questa è la collezione di tutte le slide. Settimana per settimana verranno indicati i numeri delle slide utili. Se necessario il file potrà essere aggiorante (fate riferimento alla data di ultimo aggiornamento indicata nella seconda slide.

Prima settimana (30 settembre e 1 ottobre 2020) - INTRODUZIONE AL LINGUAGGIO C

Seconda settimana (7 e 8 ottobre 2020) - DATI AGGREGATI

Terza settimana (14 e 15 ottobre 2020) - FUNZIONI e RICORSIONE

Quarta settimana (21 e 22 ottobre 2020 ) - PUNTATORI

Quinta settimana (28 e 29 ottobre 2020) - ALLOCAZIONE DINAMICA DELLA MEMORIA

Sesta settimana (4 e 5 novembre 2020) - LISTE CONCATENATE + PARADIGMA CLIENT/INTERFACCIA/IMPLEMENTAZIONE

Liste concatenate

Client/interfaccia/implementazione e tipi di dati astratti

Settima settimana (11 e 12 novembre 2020) - LISTE BIDIREZIONALI, CODE E PILE, algoritmi di ordinamento

Ottava settimana (18 e 19 novembre 2020) - ALBERI

  • Lezione:
  • Esercizi:
    • Scheda di esercizi. La scheda è composta da due parti: la prima parte propone di scrivere alcune funzioni per manipolare alberi binari; la seconda parte propone un esercizio di applicazione degli alberi binari di ricerca. Il codice per la manipolazione degli alberi binari di ricerca è fornito in una scheda a parte.
    • Scheda in cui sono presenta le funzioni fondamentali per gli alberi binari di ricerca, con relative note illustrate (NB: nelle illustrazioni, ci sono alcune differenze nei nomi dei parametri e delle variabili).
    • Alcuni quesiti giocosi tratti dal Kangourou dell'Informatica e dal Bebras dell'Informatica. I quesiti hanno difficoltà molto variabili (alcuni sono rivolti già ai bambini della scuola primaria) e sono raccolti qui perché fanno tutti riferimento in qualche senso alla struttura dati ad albero e possono offrire diversi spunti di riflessione. Nel contesto di questa esercitazione, non è interessante tanto risolvere i quesiti (ovvero trovare la risposta giusta) ma ragionare sui diversi contesti in cui gli alberi possono essere utilizzati per modellare situazioni concrete, su come problemi molto diversi possano essere formalizzati e affrontati mediante gli alberi, sulle proprietà dei vari tipi particolari di alberi (ad esempio: alberi di decisione, alberi binari di ricerca, alberi red-black, heap).

Nona settimana (25 e 26 novembre 2020) - RIPASSO

Per questa settimana non sono proposti argomenti nuovi, quindi avete occasione di recuperare terreno se siete rimasti indietro con gli esercizi!
Sono disponibili dei nuovi video con lo svolgimento di esercizi assegnati nelle settimane passate. Per maggior ordine, i video nuovi sono elencati sia qui che in alto nella pagina, in corrispondenza della settimana in cui sono stati assegnati.

Oggi è la Giornata internazionale per l'eliminazione della violenza contro le donne

Decima settimana (2 e 3 dicembre 2020) - Code di priorità, heap, algoritmi greedy

Code di priorità e heap

Algoritmi greedy

Undicesima settimana (9 e 10 dicembre 2020) - Programmazione dinamica

Dodicesima settimana (16 e 17 dicembre 2020) - Ancora algoritmi greedy + grafi

Ancora su algoritmi greedy

Nella sezione dedicata alla decima settimana sono stati pubblicati nuovi video relativi all'esercitazione "Un programma ricco di esempi".

Grafi