L'esame di algoritmi e strutture dati è in concomitanza con l'esame di laboratorio di algoritmi e strutture dati. L'esame è orale. Per l'ammissione all'esame orale lo studente deve superare una esercitazione scritta di 3 ore che consiste in tre esercizi sulla parte di teoria e un esercizio sulla parte di laboratorio. Gli esercizi sulla parte di teoria sono di difficoltà crescente e cercano di valutare sia le conoscenze acquisite che le capacità di ragionamento nell'ambito della materia. L'esercizio sulla parte di laboratorio verifica le capacità di formulare un algoritmo nel linguaggio Java. L'esercitazione scritta si intende superata se lo studente ottiene una votazione di almento 18/30 sui 3 esercizi teoria e una valutazione di 18/30 sull'esercizio di laboratorio. Il voto complessivo dell'esercitazione scritta è la media pesata dei voti di teoria (peso 4/5) e di laboratorio (peso 1/5).

Alla prova orale lo studente può decidere di verbalizzare il voto dell'esercitazione scritta o di essere riesaminato mediante colloquio. In tal caso il voto finale dell'esame sarà basato puramente sul colloquio senza tenere in alcun conto l'esito dell'esercitazione scritta.

Lo studente che dovesse superare una sola parte dell'esercitazione scritta può recuperare l'altra parte durante appelli d'esame successivi. In tal caso lo studente avrà a disposizione 2 ore e 20 minuti per recuperare la parte di teoria e 50 minuti per recuperare la parte di laboratorio. Il voto di partenza per la prova orale sarà la media pesata dei voti di teoria e laboratorio decurtati di un punto.