Module Math3-Algo : Algorithmique et programmation
Table of Contents
1 Prérequis
Module Math2-AlgLin2
2 Objectif d'apprentissage
Ce cours est une introduction à l'algorithmique et à la programmation sous Python. Son objectif principal est double : familiariser l'étudiant avec les notions essentielles de l'algorithmique, afin de le sensibiliser à la nécessité de réfléchir au code avant de programmer, et apprendre à programmer efficacement en Python.
3 Descriptions des enseignements
3.1 Chapitre 1. Introduction à l'algorithmique
Terminaison, correction et complexité d'un algorithme. Algorithmes récursifs : stratégie diviser pour régner, algorithmes de tri
3.2 Chapitre 2. Quelques notions sur les structures de données
Piles, files, arbres
3.3 Chapitre 3. Algorithmique pour l'algèbre linéaire numérique
décompositions matricielles (QR, LU, Choleski).
En travaux pratiques, les étudiants apprendront à coder en Python (notions de variables, boucles, tracés, matrices, vecteurs, classes, etc.) testeront (efficacité, facilité d'implémentation, occupation de l'espace mémoire…) les différents algorithmes proposées en cours appliqueront les notions étudiées en cours/Td à de nouveaux problèmes.
4 Références
Introduction à l'algorithmique, Cours et exercices, Cormen, Leiserson, Rivest, Stein
Éléments d'algorithmique, Beauquier, Berstel, Chrétienne.