Algorithmes et structures de données
- Enseignant: Michael Blondin
- Correcteur: Etienne D. Massé
- Plan de cours
- Horaire:
– mercredi: 10h30 à 12h20 au D2-1060
– jeudi: 10h30 à 12h20 au D2-1060
- Disponibilité sans rendez-vous: lundi de 15h00 à 16h00
- Examen périodique: samedi 17 oct. de 10h30 à 12h20 aux D7-2021 et D7-2023
- Examen final: mercredi 9 déc. de 9h00 à 12h00 aux D7-2016 et D7-3021
Annonces
-
[11 nov.] En raison du passage en zone rouge, la dernière séance de cours en présentiel aura lieu le jeudi 12 novembre. À partir de la semaine prochaine, le cours aura lieu:
- En ligne sur Teams (équipe Cours-IFT436-A20),
- En synchrone aux journées et heures habituelles,
- De façon magistrale au tableau comme normalement.
- Vous êtes encouragé·e·s à remplir la rétroaction de mi-session (28 oct. au 3 nov., anonyme et non officielle)
Calendrier
Matériel
Références
- Notes de cours
- Capsules vidéos asynchrones
- Séances synchrones (en rediffusion)
- Code source
- Diaporama d'introduction
Matériel pour l'étude
- Structure de l'examen final de 2020
- Examen final de 2019: énoncé | solutions
- Fiches récapitulatives: diaporama | 3 × page | voir annexe des notes pour celles avec liens cliquables
- Exercices: voir la fin de chaque chapitre des notes (plusieurs solutions sont en annexe)
Références complémentaires
- Examen périodique de 2019: énoncé | solutions
- Gilles Brassard et Paul Bratley: Fundamentals of Algorithmics. Prentice-Hall, Inc., 1996
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest et Clifford Stein: Introduction to Algorithms. The MIT Press, 3e édition, 2009
- Notes de cours de Manuel Lafond
Ressources externes intéressantes
-
Visualisation
d'algorithmes
- Tri: par insertion, par monceau, par fusion, rapide, «radix»
- Graphes: parcours en profondeur, parcours en largeur, tri topologique
- Arbres couvrants: algorithme de Kruskal, algorithme de Prim, ensembles disjoints
- Plus courts chemins: algorithme de Dijkstra, algorithme de Bellman-Ford
- Livre moderne sous licence libre avec plusieurs exercices: Jeff Erickson: Algorithms, 2019
- LeetCode: > 1000 problèmes d'algorithmique à résoudre dans > 10 langages de programmation
- Encyclopédie OEIS des suites de nombres entiers