Structures de données (listes, arbres, tables de hachage).
Algèbre de Boole, fonctions booléennes.
Algorithmes de tri (insertion, fusion, QuickSort).
Graphes et algorithmes sur les graphes.
Algorithmes classiques d’arithmétique sur les grands entiers (exponentiation, Euclide, symbole de Jacobi, racines carrées modulaires, Montgomery, Karatsuba),
Calculs matriciels.
Preuves d’algorithmes, invariants de boucle,
Calculs de complexité (maximale, en moyenne), récurrences linéaires, séries génératrices.
Programmation en langage C (30 heures).
Projet en langage C.