Il secondo semestre laboratorio di Algoritmi e Strutture Dati inizia martedì 10 marzo 2026 dalle 13.30 alle 15.30 in aula B109. Le lezioni di laboratorio questo semestre si svolgeranno sia di martedì che di giovedì:
| Giorno | Orario | Dove |
|---|---|---|
| Martedì | 13.30–15.30 | B109 |
| Giovedì | 11.30–13.30 | B109 |
Per annunci relativi alle esercitazioni in laboratorio utilizziamo il canale Telegram del corso (link accessibile attraverso login UniTN).
Gli esercitatori di laboratorio sono
I tutor sono:
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: ASD25-Tutorato. I materiali per il tutoraggio si trovano su questo repository.
| Lab | Data | Slides | Prob1 | Prob2 | Prob3 | Prob4 | Prob5 | Materiale |
|---|---|---|---|---|---|---|---|---|
| 1 | 09/10/2025 | lab01.pdf | Somma di due numeri (somma) |
Sottosequenza di somma massima (sottoseq) |
Sottomatrice di somma massima (sottomat) |
- | - | soluzioni lab01 |
| 2 | 21/10/2025 | lab02.pdf | Ordinamento (sort) |
Intervalli (intervalli) |
Funzione ceil (ceil) |
Ordinamento pesato (sortpesato) |
Progetto programmazione dinamica a. a. 2014/2015: Natale a Flarlandia (flatland) slides, testo, dataset, spiegazione aggiuntiva |
soluzioni lab02 |
| 3 | 30/10/2025 | lab03.pdf | Visita di un albero (visita-albero) |
Visita di un grafo orientato (visita) |
Diametro di un grafo non orientato (diametro) |
Progetto grafi a. a. 2016/2017: Pokémon Park (pokemon) slides, testo, dataset |
Progetto grafi a. a. 2024/2025: Shining - Algoritmi alla follia (shining) slides, testo, dataset |
Materiale aggiuntivo su grafi, soluzioni lab03 |
| 4 | 13/11/2025 | lab04.pdf | Alberi Red-Black (red-black) |
Individuazione di un ciclo in un grafo orientato (ciclo) |
Numero di cammini minimi (numcammini) |
Progetto grafi a. a. 2020/2021: Lettere da Powarts (powarts) slides, testo, dataset |
Progetto grafi a. a. 2019/2020: Cicli ciclabili (cicli) slides, testo, dataset |
soluzioni lab04 |
| 5 | 02/12/2025 | lab05.pdf | Dimensione massima componente fortmente connessa (componente) |
Ordinamento topologico (toporder) |
Cammino più lungo (camminolungo) |
Progetto grafi a. a. 2021/2022: Super Mario Graph (mario) slides, testo, dataset |
Progetto grafi a. a. 2017/2018: 007: Pioggia di laser (laser) slides, testo, dataset |
soluzioni lab05 |
| 6 | 09/12/2025 | lab06.pdf | Progetto facoltativo a. a. 2025/2026: Ricostruzione di un albero (ricostruzione-albero) slides, testo, dataset |
Sottoposizioni su arena | - | - | - | soluzione progetto |
| Lab | Data | Slides | Prob1 | Prob2 | Prob3 | Prob4 | Prob5 | Materiale |
|---|---|---|---|---|---|---|---|---|
| 7 | 10/03/2026 | lab07.pdf | Massimizzazione della somma in un insieme (zaino) |
Sottoinsieme crescente di somma massima (sottocres) |
Le pillole della zia (pillole) |
- | - | - |
| 8 | 09/04/2026 | - | 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 (lich) |
Progetto programmazione dinamica a. a. 2017/2018: Assedio a Nassau (nassau) |
- |
| 9 | 28/04/2026 | - | Problema del commesso viaggiatore (tsp) |
Progetto algoritmi approssimati a. a. 2017/2018: Alpinocalypse Now (alpini) |
Progetto algoritmi approssimati a. a. 2018/2019: Game of (approximated) Thrones (got) |
Progetto algoritmi approssimati a. a. 2019/2020: Star Wars: Il Risveglio Dell’Algoritmo (swrace) |
Progetto algoritmi approssimati a. a. 2023/2024: L’uncinetto di nonna Alberta (nonna) |
- |
| 10 | 07/05/2026 | - | Progetto algoritmi approssimati a. a. 2020/2021: ASD: Endgame (endgame) |
Progetto algoritmi approssimati a. a. 2021/2022: Riders per il concertone (riders) |
Progetto algoritmi approssimati a. a. 2022/2023: Game of Thrones II: House of Algorithms (got2) |
- | ||
| 11 | 19/05/2026 | - | - | - | - | - | - | - |
| 12 | 21/05/2026 | - | - | - | - | - | - | - |
ricostruzione-albero): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)shining): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)conclave): Slides + Testo (dataset), files di supporto: conclave.zip - Soluzione (sorgenti soluzioni)barbie): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)nonna): Slides + Testo (dataset), files di supporto: nonna.zip - Soluzione (sorgenti soluzioni)amogasd): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)got2): Slides + Testo (dataset), files di supporto: got2.zip - Soluzione (sorgenti soluzioni)mario): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)riders): Slides + Testo (dataset), files di supporto: riders.zip - Soluzione (sorgenti soluzioni)powarts): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)endgame): Slides + Testo (dataset), files di supporto: endgame.zip - Soluzione (sorgenti soluzioni)cicli): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni), Soluzione lineareswrace): Slides + Testo (dataset), files di supporto: swrace.zip - Soluzione (sorgenti soluzioni)guerra): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)got): Slides + Testo (dataset), files di supporto: got.zip - Soluzione (sorgenti soluzioni)laser): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)nassau): Slides + Testo (dataset) - Soluzione (sorgenti soluzioni)alpini): Slides + Testo (dataset), files di supporto: alpini.zip - Soluzione (sorgenti soluzioni)pokemon): Slides + Testo (dataset), Soluzione (sorgenti soluzioni)lich): Slides + Testo (dataset), Soluzione (sorgenti soluzioni)batman): Slides + Testo (dataset), Soluzione (sorgenti soluzioni)flatland): Slides + Testo (dataset), Spiegazione aggiuntiva, Soluzione