Il secondo semestre del laboratorio di Algoritmi e Strutture Dati inizia giovedì 7 marzo 2024 dalle 11:30 alle 13:30.
Le lezioni di laboratorio si terranno usualmente il giovedì. Per annunci relativi alle esercitazioni in laboratorio utilizziamo il canale Telegram del corso.
Gli esercitatori di laboratorio sono
I tutor sono:
e in aggiunta (guests):
Il sito di riferimento si chiama judge. Per partecipare vi è richiesto di:
Nella sezione “Link utili” trovate una guida che spiega come funziona il sistema di valutazione di judge.
Le esercitazioni di laboratorio comprendono 12 lezioni – di cui 6 nel primo semestre e 6 nel secondo – alcune delle quali saranno dedicate alla presentazione e implementazione dei progetti.
Durante una lezione tipica del laboratorio:
Durante il corso verranno assegnati dei progetti, con tempo di risoluzione attorno alla settimana e da svolgere singolarmente o in gruppo (max 3 persone), che daranno origine a piccoli incrementi (bonus) da aggiungere al voto dello scritto. Questi punteggi aggiuntivi possono essere utilizzati per superare la soglia per accedere all’orale: se avete preso 15 allo scritto e avete 3 punti bonus, siete ammessi in quanto la somma raggiunge il 18. È obbligatorio consegnare almeno un progetto sufficiente per accedere all’orale. Il punteggio aggiuntivo rimane valido negli anni successivi e continua a dare la possibilità di accedere all’orale.
Le lezioni di laboratorio comprendo lo svolgimento di alcuni esercizi di programmazione in C++. In generale, il consiglio è di compilare edeseguire il vostro codice in un terminale pertanto, se già non lo avete a disposizione, dovete installare il compilatore g++. Per scrivere il codice sorgente potente scegliere tra decine di editor.
[Tutti gli OS]
Installare un compilatore: installing a compiler
[(GNU/)Linux]
Tutte le distribuzioni linux hanno dei pacchetti che forniscono il compilatore GNU (gcc per il C, g++ per il C++), ecco due riferimenti:
[Windows]
Guida generale all’installazione di un compilatore e di un editor: guida
[Mac]
Installare g++: guida
I tutor hanno creato un gruppo Telegam per dare supporto alla programmazione in C++ per chi avesse bisogno di rivedere le basi. Lo trovate a questo link. I materiali per il tutoraggio si trovano su questo repository.
Lab | Data | Slides | Prob1 | Prob2 | Prob3 | Prob4 | Prob5 | Materiale |
---|---|---|---|---|---|---|---|---|
1 | 03/10/2023 | lab01.pdf | Somma di due numeri (somma ) |
Sottosequenza di somma massima (sottoseq ) |
Sottomatrice di somma massima (sottomat ) |
- | - | Soluzioni lab01 |
2 | 17/10/2023 | lab02.pdf | Ordinamento (sort ) |
Intervalli (intervalli ) |
Ordinamento pesato (sortpesato ) |
- | - | |
3 | 14/11/2023 | lab02.pdf | Visita di un grafo orientato (visita ) |
Diametro di un grafo non orientato (diametro ) |
Numero di cammini minimi (numcammini ) |
Primo Progetto a.a. 2020/2021: Lettere da Powarts (powarts ) |
Primo progetto a.a. 2014/2015: Batman si annoia (batman ) |
Strutture dati per grafi, Soluzioni lab03 |
4 | 28/11/2023 | lab04.pdf | Dimensione massima componente fortmente connessa (componente ) |
Ordinamento Topologico (toporder ) |
Cammino più lungo (camminolungo ) |
Primo progetto a.a. 2019/2020: Cicli ciclabili (cicli ) |
Primo progetto a.a. 2022/2023: AmongASD (amogasd ) |
Soluzioni lab04 |
5 | 12/12/2023 | lab05.pdf | Primo progetto a.a. 2023/2024: Algoritmi greedy a Barbieland (barbie ) slides, testo, dataset |
sottoposizioni su arena | - | - | - | classifica punti bonus |
6 | 14/12/2023 | lab05.pdf | Primo progetto a.a. 2023/2024: Algoritmi greedy a Barbieland (barbie ) slides, testo, dataset |
sottoposizioni su arena | - | - | - | classifica punti bonus |
Lab | Data | Slides | Prob1 | Prob2 | Prob3 | Prob4 | Prob5 | Materiale |
---|---|---|---|---|---|---|---|---|
7 | 07/03/2024 | lab07.pdf | Massimizzazione della somma in un insieme (zaino ) |
Sottoinsieme crescente di somma massina (sottocres ) |
Sequenze Possibili (pillole ) |
- | - | Soluzioni lab07 |
8 | 21/03/2024 | lab08.pdf | Sottosequenza comune massimale (lcs ) |
Min-Cover su albero (mincover ) |
Min-Cover su albero pesato (mincoverpesato ) |
Progetto programmazione dinamica a. a. 2016/2017: La vendetta del Re Lich | Progetto programmazione dinamica a. a. 2017/2018: Assedio a Nassau (nassau ) |
- |
9 | 09/05/2024 | - | - | - | - | - | - | - |
10 | 16/05/2024 | - | - | - | - | - | - | - |
11 | 28/05/2024 | - | - | - | - | - | - | - |
12 | 30/05/2024 | - | - | - | - | - | - | - |