Notions avancées de structures de données, algorithmes et programmation
Notions avancées de structures de données, algorithmes et programmation
Ce cours aborde les points suivants :
- méthodologie de construction de programmes par abstraction ;
- types abstraits, profils de fonctions et signatures, constructeurs, sélecteurs, modificateurs et destructeurs, pré et post conditions, expression du comportement mutuel des opérations ;
- modules de description, extensions, généricité ;
- récursivité et suppression de la récursivité ;
- expression des entrées-sorties et itérateurs ;
- analyse de la complexité des algorithmes ;
- stratégies algorithmiques classiques ;
- implantation et programmation en langage impératif (C) ;
- représentations concrètes par tableaux et pointeurs, et leur masquage ;
- allocation de mémoire statique et dynamique, maîtrise des pointeurs ;
- programmation en C ;
- import/Export et compilation séparée ;
- structures de données classiques ;
- définition et représentation des piles, files, listes, listes ordonnées ;
- tables, adressage calculé, associatif, indexé, partagé, hachage ;
- graphes orientés et non orientés ;
- algorithmes classiques de parcours de graphes en profondeur et en largeur ;
- fermetures de relations binaires, algorithme de Warshall ;
- recherche de plus court chemins, algorithme de Dijkstra ;
- arbres binaires et généraux, forêts, dictionnaires, arbres équilibrés, arbres AVL, files de priorité ;
- algorithmes sur les arbres, arbres de recouvrement ;
- algorithmes de tri interne et externe ;
- optimalité et complexité des algorithmes de tri ;
- implantations concrètes et programmation en C.
[ ]
Objectifs
ces objectifs
Les objectifs de ce cours sont :
- savoir poser et résoudre un problème par l'informatique ;
- connaître les structures de données et algorithmes classiques ;
- savoir implanter de manière concrète avec des tableaux et des pointeurs ;
- savoir évaluer la complexité des solutions retenues ;
- savoir programmer en langage C et mettre en œuvre.
ces objectifs
Niveau et prérequis conseillés
ces prérequis
Cours de niveau 14. Les prérequis conseillés sont :
- Algorithmique et programmation
- Approfondissement des notions de structures de données, algorithmes et programmation
ces prérequis
Voir aussi