Advanced algorithmics

Duration2h30

Pré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 d’autre que des cas particuliers de problèmes anciens et bien connus.

Cette session vous présentera un certain nombre de stratégies algorithmiques existantes ainsi que les 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 le cours

Exigences techniques

Pour pouvoir commencer à travailler sur l’activité, vous devez remplir les conditions suivantes :

Pendant le cours

Acquisition des connaissances

Pour pouvoir commencer l’activité pratique efficacement, nous introduirons quelques concepts nécessaires au début du cours. Pour vous faire gagner du temps, nous vous présenterons quelques diapositives, que vous pouvez trouver ci-après :

Ces diapositives couvrent uniquement les éléments principaux du cours, et beaucoup plus de détails sont donnés dans les articles associés, que vous devriez étudier en détail :

Vous pouvez vérifier votre compréhension de ces articles ici :

Activité pratique

Le reste du cours est dédié à une activité pratique. Lorsque vous êtes prêt, cliquez sur le lien ci-dessous pour commencer :

Après le cours

Compléter la session en cours

Avant la prochaine session, vous devez :

  • Revoir le contenu des articles ci-dessus.
  • Compléter les parties non optionnelles de l’activité pratique.

Préparer la prochaine session

De plus, vous devez :

  • Vérifier la section “Avant le cours” de la prochaine session, et vous assurer de faire tout ce qui est nécessaire pour la préparer.
  • La prochaine session commencera par un QCM évalué, qui évaluera votre compréhension des sessions d’Algorithmique 1, 2, 3 et 4.