Algorithme et programmation
Apprendre à raisonner sur un traitement avant de l'écrire : structures de contrôle, fonctions, structures de données et coût des algorithmes.
Variables et structures de contrôle
Variables, types, affectation, entrées/sorties, conditions, boucles. La grammaire de tout ce qui suit.
Fonctions et modularité
Découpage en fonctions, paramètres, retour, portée, effets de bord. Pourquoi une fonction de trois cents lignes est un bug en attente.
Tableaux, enregistrements et structures
Tableaux à une et deux dimensions, enregistrements, tableaux d'enregistrements, parcours et recherche.
Récursivité
Cas de base, cas récursif, pile d'appels, dérécursivation, diviser pour régner.
Listes, piles et files
Structures dynamiques, chaînage, pile LIFO, file FIFO, et les problèmes qu'elles résolvent naturellement.
Complexité et algorithmes de tri
Notation grand-O, coût en temps et en espace, tris par sélection, insertion, fusion, rapide. Recherche dichotomique.