Cette page contient un certain nombre de cours destinés à accompagner les épreuves d'algorithmique. Ils présentent des méthodes et techniques vous permettant d'être plus efficaces dans la résolution de problèmes.
Une bonne partie du contenu de ces cours ne prend tout son sens qu'après une certaine expérience en résolution de problèmes. Pensez-donc à les relire régulièrement, au cours de votre progression, et à vérifier à chaque fois que vous appliquez bien tous ces conseils.
Notez que cette page n'a pas pour objectif de présenter les algorithmes classiques. C'est en effet via la résolution des exercices que vous découvrirez ceux-ci petit à petit, en particulier via les corrections proposées. Nous vous rappelons en effet que l'important pour progresser en algorithmique n'est pas de connaître des algorithmes, mais d'apprendre à trouver par soi-même la solution de problèmes de plus en plus difficiles. Les documents de cette page qui les différents types d'algorithmes, sont des synthèses auxquels vous pourrez accéder après avoir résolu les exercices correspondants (et en avoir fait la demande auprès des entraîneurs).
Techniques
Méthode de résolution des sujets d'algorithmique
Balayages et fenêtres glissantes
- Reconnaître et résoudre [document de synthèse]
Graphes
- Résumé du vocabulaire de graphes
- Reconnaître et manipuler un graphe implicite [document de synthèse]
- Reconnaître et résoudre [fiche méthode]
- Réduire la complexité d'un problème de graphes [fiche méthode]
Programmation dynamique
- Représentation graphique de la solution
- Passer du récursif à l'itératif
- Reconnaître et résoudre [fiche méthode]
Géométrie
- Résumé des concepts de base
Structures de données
- Structures de données de base [document de synthèse]
- Questions auxquelles les structures répondent
- Structures de données [fiche récapitulative]
Backtrack
- Résoudre un problème avec un backtrack [document de synthèse]
Spécifique IOI