Comment utiliser ce site
Chaque fiche suit toujours le même plan : vocabulaire, exemple, principe, étapes, démonstration interactive, code, complexité (quand elle s'applique). Choisissez une fiche ci-dessous pour commencer.

Algorithmes de tri

Tri par sélection
Chercher la plus petite valeur restante, puis l'échanger avec sa position finale.
Tri par insertion
Décaler les valeurs, une par une, pour insérer chaque nouvelle valeur à sa bonne place.

Recherche dans un tableau

Recherche dichotomique
Chercher une valeur dans un tableau trié en divisant à chaque étape la zone de recherche par deux.

Représentation des données

Écritures en base 2, 10, 16
Convertir un nombre entre décimal, binaire et hexadécimal.
Entiers relatifs — complément à 2
Représenter les nombres négatifs en binaire, sur un nombre de bits fixé.
Flottants — norme IEEE 754
Décomposer un nombre à virgule en signe, exposant et mantisse.
Encodage ASCII, Unicode, UTF-8
Représenter un caractère de texte sous forme d'octets.

Le web : HTML et CSS

HTML et CSS : les bases
Construire l'arbre DOM d'une page HTML, puis déterminer le style final d'un élément avec les sélecteurs et la cascade CSS.

Le web : JavaScript et formulaires

Événements et formulaires
Lire ce que l'utilisateur a tapé dans un formulaire, et réagir à un clic avec addEventListener.

Structures de données abstraites et POO

Interfaces, implémentation bas niveau et POO
Piles et files implémentées avec un tableau à position fixe, la liste comme interface récursive, et les bases de la programmation orientée objet.
Entraînement au bac : polynômes et nutrition
Sujet d'entraînement corrigé (Séance 6) : représenter des polynômes avec des listes chaînées, et des plats avec la classe aliment.

Structures de données en Python

Les listes
Créer, indexer, modifier et parcourir une liste Python ; les méthodes courantes et la complexité.
Les dictionnaires
Associer une clé à une valeur, parcourir un dictionnaire, et compter des occurrences avec un dictionnaire.
Les files (FIFO)
Enfiler et défiler des éléments dans une file, implémentée avec une liste Python.
Les piles (LIFO)
Empiler et dépiler des éléments dans une pile, implémentée avec une liste Python.
Piles et files avec deque (mini-projet historique)
Modéliser l'historique d'un navigateur avec collections.deque : version fonctionnelle (dictionnaire) puis version orientée objet (classe Historique).
Synthèse : listes, piles, files
Comparer listes, piles et files : opérations, un même exemple traité par chacune, et complexité.
Les arbres binaires
Vocabulaire, définition récursive, classe Nœud, hauteur et taille d'un arbre binaire, avec un exemple unique repris pas à pas.
Exercice guidé : compter les feuilles
Écrire et tracer pas à pas une méthode récursive qui compte les feuilles d'un arbre binaire, sur l'exemple déjà vu.
Les graphes
Vocabulaire, listes d'adjacence et matrices d'adjacence pour représenter un graphe, avec un exemple unique repris pas à pas.

Pour aller plus loin

Formation Python (Udemy)
Des cours complets pour apprendre Python en profondeur, en dehors du programme du bac.