Module du S1 de CS2C. IAGI a un module proche : « Algorithmique avancée ».
Tout est en C. Pour compiler un fichier : gcc fichier.c -o prog.
Cours
- 00 : les bases du C : struct, pointeurs, malloc et free, fichiers, notation O
- 01 : listes chaînées : insertion, suppression, listes doubles et circulaires
- 02 : listes chaînées, exercices
- 03 : piles (LIFO) : tableau et liste chaînée, parenthèses, expression postfixée
- 04 : files (FIFO) : tableau circulaire, liste chaînée, et LIFO contre FIFO
Exercices
- 01 : structures : tableau de struct étudiants
- 02 : liste chaînée : créer une liste depuis la saisie
- 03 : opérations sur une liste : insertion, suppression, affichage à l'envers
TP
Examen TP (corrigé)
Chaque fichier contient l'énoncé en commentaire et un main de test.
- ex1 : listes chaînées : rotation, suppression des éléments d'une autre liste
- ex2 : arbre binaire de recherche : taille, max, somme, hauteur minimale, feuilles
- ex3 : pile : évaluation d'une expression postfixée
Pour aller plus loin : piles et files
En français : - Les piles et les files : tutoriel en C de l'ancien Site du Zéro (archive ; le navigateur peut signaler un certificat expiré). - Les piles et les files en langage C : cours sur Studocu (inscription parfois demandée).
En anglais : - Queue in C et Queue data structure, GeeksforGeeks - FIFO approach et FIFO vs LIFO, GeeksforGeeks - LIFO vs FIFO: mastering stacks and queues in C, Medium - Understanding queues in JavaScript, DEV
Problem solving
Dans problem-solving/ : input-output, LeetCode (array, trees), reverse linked list. Les solutions LeetCode ne contiennent que la fonction, comme sur le site.