Algorithmique avancée
Durée2h30Présentation & objectifs
De nombreux problèmes peuvent être résolus de manière algorithmique. Après plusieurs décennies de recherche de solutions algorithmiques efficaces, certaines familles de techniques ont émergé. Les nouveaux problèmes ne sont généralement rien de plus que des cas particuliers de problèmes anciens et bien connus.
Cette session vous initiera à un certain nombre de stratégies algorithmiques existantes ainsi qu’aux situations de résolution de problèmes où elles s’appliquent. Vous découvrirez les techniques suivantes : diviser pour régner, mémoïsation, programmation dynamique et approches gloutonnes.
Avant la session
Pour pouvoir commencer l’activité pratique de manière efficace, familiarisez-vous avec les notions manipulées lors de la session en consultant les documentations suivantes :
Vous pouvez vérifier votre compréhension de ces articles ici :
Exigences techniques
Pour pouvoir commencer à travailler sur l’activité, vous devez répondre aux exigences suivantes :
- Veuillez apporter votre propre ordinateur.
- Assurez-vous d’avoir une connexion réseau fonctionnelle.
Pendant la session
Préparation à l’activité pratique
Commençons par vérifier que vous maîtrisez les concepts de base de la POO et de la syntaxe Python.
Activité pratique
Le reste de la session est consacré à une activité pratique. Quand vous êtes prêt, cliquez sur le lien ci-dessous pour commencer :
Après la session
Compléter la session en cours
Avant la prochaine session, vous devriez :
- Revoir le contenu des articles ci-dessus.
- Compléter les parties non optionnelles de l’activité pratique.
Préparer la session suivante
De plus, vous devriez :
- Consulter la section “Avant la session” de la session suivante, et vous assurer de faire tout ce qui est requis pour la préparer.
- La session suivante commencera par un QCM évalué, qui évalue votre compréhension des sessions d’algorithmique 1, 2, 3 et 4.