.. _l-feuille-de-route-2022-1A: Feuille de route 2022 (1A) ========================== .. contents:: :local: :depth: 1 :ref:`Page principale du cours ` Cours +++++ Evaluation ^^^^^^^^^^ Au premier semestre, le cours se conclue par un TD noté (voir :ref:`l-seances-notees-1A`). Au second semestre, pas de TD, juste un :ref:`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 :ref:`tri ` comme le `tri bulle `_ et le `tri fusion `_. Version de Python ^^^^^^^^^^^^^^^^^ Les exercices et notebooks sont testés sur la version :epkg:`Python` 3.9. Le plus simple pour installer :epkg:`Python` est d'utiliser la distribution :epkg:`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 .. contents:: :local: Séance 1 - 7/9 - introduction, dictionnaire ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`2022-09-07 ` (< 30 minutes) * :ref:`2020suffixrst` Séance 2 - 14/9 - programmation dynamique, voyageur de commerce ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`2020editrst` * :ref:`2022hashrst` Séance 3 - 21/9 - numpy, pandas ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`2022classesrst` : petit aperçu des classes pour mieux appréhender les matrices et les dataframes * :ref:`2020numpyrst` * :ref:`2020pandasrst` Séance 4 - 28/9 - graphes ^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`2020graphrst` * :ref:`2020ordonnancementrst` Autres problèmes autour des graphes : * :ref:`2020tsprst` * :ref:`td1acenoncesession7rst` Séance 5 - 5/10 - sérialisation, tests unitaires, profiling ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`2022serialisationrst` * :ref:`2022unittestrst` * :ref:`2022profilingrst` Séance 6 - 12/10 - expressions régulières, webscrapping ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`2020regexrst` * :ref:`TD2AEcoWebScrapingcorrigerst` Séance 7 - 19/10 - top k, tri ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`2020topkrst` * révisions en prévision du TD noté Séance 8 - 26/10 - graphes ^^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`2020carterst` * TD noté... lien après la séance, énoncés des années précédentes : :ref:`l-seances-notees-1A` Ensemble des énoncés des séances ++++++++++++++++++++++++++++++++ Enoncés écrits en 2020 * :ref:`2020carterst` * :ref:`2020covidrst` * :ref:`2020editrst` * :ref:`2020graphrst` * :ref:`2020jsonxmlrst` * :ref:`2020numpyrst` * :ref:`2020ordonnancementrst` * :ref:`2020pandasrst` * :ref:`2020profilerst` * :ref:`2020regexrst` * :ref:`2020restrst` * :ref:`2020surfacerst` * :ref:`2020suffixrst` * :ref:`2020topkrst` * :ref:`2020tsprst` Enoncés écrits en 2021 * :ref:`2021covidpicklerst` * :ref:`20212048classerst` * :ref:`2021editdistrst` * :ref:`2021tsprst` * :ref:`2021randomgraphrst` * :ref:`2021randomgraphrst` (suite) Enoncés écrits en 2022 * :ref:`2022serialisationrst` * :ref:`2022profilingrst` * :ref:`2022hashrst` * :ref:`2022classesrst` * :ref:`2022unittestrst` D'autres énoncés de séances sont disponibles depuis la page principale du cours :ref:`l-td1a`.