Diplômes intégrant cet élément pédagogique :
Descriptif
Ce cours présente et approfondit le paradigme de la programmation impérative. Il donne aux étudiants les outils pour modéliser des situations complexes et concevoir des solutions efficaces.
À l'issue de cet enseignement, l'étudiant sera capable de maîtriser la programmation avancée en langage C :
- Manipuler des fichiers textes et binaires
- Manipuler des pointeurs
- Manipuler les arguments de la ligne de commande
- Déterminer le coût en temps des algorithmes dans le pire des cas
- Élaborer des algorithmes récursifs
- Manipuler les structures de données complexes du langage C
1. Pointeurs, allocation dynamique, Makefile et manipulation des fichiers
2. Récursivité : appels de sous-programmes et la pile d'exécution, paradigme « diviser pour régner »
3. Algorithmes de tri et leur complexité : tri par sélection, tri rapide, tri par insertion séquentielle, tri fusion
4. Structures de données élémentaires : Liste, Ensemble, Pile, File
5. Listes chaînées : simplement chaînées, doublement chaînées
6. Arbres : arbres binaires, arbres binaires de recherche
Pré-requis recommandés
- Cours "ALGORITHMIQUE ET PROGRAMMATION 1" (IESE3)
- Connaissance des bases de la compilation
- Maîtrise de l'environnement de programmation Linux
Bibliographie
"Types de données et Algorithmes" par Christine Froidevaux, Marie-Claude Gaudel et Michèle Soria
"Le langage C - Norme ANSI" par Brian W. Kernighan et Dennis M. Ritchie
Informations complémentaires
Lieu(x) : GrenobleLangue(s) : Français