Feuille de route 2022 (1A)#

Page principale du cours

Cours#

Evaluation#

Au premier semestre, le cours se conclue par un TD noté (voir Séances notées).

Au second semestre, pas de TD, juste un projet informatique, par groupe à soutenir en juin.

Prérequis#

La programmation fait maintenant partie du programme des classes préparatoires. Ce cours suppose que les types du langage, sa syntaxe sont connus tout comme quelques algorithmes de tri comme le tri bulle et le tri fusion.

Version de Python#

Les exercices et notebooks sont testés sur la version Python 3.9. Le plus simple pour installer Python est d’utiliser la distribution Anaconda. On peut également se débrouiller soi-même sur une distribution Linux comme Debian 10 (Ubuntu est très similaire) : Install Python 3.9 and many packages on Linux Debian 10.

Plan proposé#

Liens, notebooks prévus pour les séances pratiques. Chaque session présentera un algorithme et des outils ou concepts informatiques utiles pour la manipulation de données. La suite de cette page propose des énoncés chaque semaine mais l’essentiel est de maîtriser les notions qui suivent.

Notions à connaître#

Algorithmes, structure de données

  • Dictionnaires

  • Tri bulle, tri fusion

  • Recherche dichotomique

  • Graphe, prédécesseur, successeur, composante connexe dans un graphe

  • Plus court chemin dans un graphe, distance d’édition

  • Plus court chemin passant par tous les points d’un graphe

Techniques

  • expression régulière

  • profiling

  • JSON, sérialisation avec pickle

  • numpy, pandas, matplotlib

  • tests unitaires

Séance 1 - 7/9 - introduction, dictionnaire#

Séance 2 - 14/9 - programmation dynamique, voyageur de commerce#

Séance 3 - 21/9 - numpy, pandas#

Séance 4 - 28/9 - graphes#

Autres problèmes autour des graphes :

Séance 5 - 5/10 - sérialisation, tests unitaires, profiling#

Séance 6 - 12/10 - expressions régulières, webscrapping#

Séance 7 - 19/10 - top k, tri#

Séance 8 - 26/10 - graphes#

Ensemble des énoncés des séances#

Enoncés écrits en 2020

Enoncés écrits en 2021

Enoncés écrits en 2022

D’autres énoncés de séances sont disponibles depuis la page principale du cours Algorithmes et programmation.