Acquis de la formation
- Comprendre les concepts de structure de données.
- Apprendre les spécifications logiques, fonctionnelles et physiques d’une structure de données
- Créer une structure de données
- Utiliser des structures de données comme: liste, pile, table, arbre, et graphe et autre pour représenter une réalité.
- Manipuler gérer et utiliser les structures de données: listes, piles, les files d’attente, arbres, tables et les
graphes,…
- Comprendre les Algorithmes de recherche d’une information
- Ecrire des procédures convenables pour indexer, accéder et rechercher une information: cas de structures
indexées, séquentielle – indexées, et adressage calculée.
- Manipuler un graphe, représenter un graphe….
- Rechercher la plus court/ plus long chemin dans un graphe.
Prérequis
Il est conseillé d’avoir suivi des cours en informatique et en programmation.
Contenu
- Concepts de structure de données, spécifications logiques, fonctionnelles et physiques.
- Représentation d’une structure de données…
- Création et manipulation d’une liste linéaire chainée: représentation et exemple d’utilisation
- Création et manipulation d’une structure de pile, et d’une file d’attente : exemple d’utilisation, de représentation, et
de manipulation…
- Création et manipulation d’une structure Table : structure séquentielle, indexée, indexée et chainée, et structure à
adressage calculée; exemples de logiciels systèmes, Recherche d’une information indexée, software
engineering…
- Création et manipulation d’un arbre: représentation d’un arbre, recherche dans un arbre, algorithme de
manipulation d’un arbre,…
- B – arbre, structure, représentation et utilisation,…
- Création et manipulation d’un graphe: représentation d’un graphe, modélisation d’un état réel par graphe,
exemples des graphes, recherche dans un graphe, plus court chemin.
- Algorithmes de Floyd, de Dijkstra et de Warshall.
Travaux pratiques:
- Développement des algorithmes de création d’une structure de données et de recherche d’une information,
Ecriture de logiciels systèmes…
Bibliographie
- Data structure using C++
- Structure de donnée en Java, Edition Eyroll-France
- Introduction à l’algorithmique 2e cycle universitaire/ Ecole d’ingénieurs DUNOD, par Thomas Cormen, Charles
Leiseron et Ronald Rivest