Algorithmique et Structures de Données Page 2 Pierre Tellier
Table des matières
Table des matières ............................................................................................................................................ 2
Structures de données....................................................................................................................................... 4
Structures simples......................................................................................................................................... 4
Structures imbriquées ................................................................................................................................... 5
Exemple : fiche de renseignement ........................................................................................................... 5
Bonne utilisation des structures................................................................................................................ 6
Structures récursives et croisées.............................................................................................................. 8
Tableaux multidimensionnels ............................................................................................................................ 9
Les tableaux statiques à 2 dimensions ......................................................................................................... 9
Matrices..................................................................................................................................................... 9
Matrices dynamiques .................................................................................................................................. 12
Tableaux mono-dimensionnels............................................................................................................... 12
Tableaux de tableaux.............................................................................................................................. 13
Quelques représentations de molécules ................................................................................................ 14
Tableaux de dimension supérieure à 2....................................................................................................... 14
Tris de tableaux ............................................................................................................................................... 15
Tables .............................................................................................................................................................. 17
Définition...................................................................................................................................................... 17
Représentation des tables........................................................................................................................... 17
fonction d’accès ...................................................................................................................................... 17
Modes d’adressage................................................................................................................................. 17
Partage de tables.................................................................................................................................... 18
Le rangement dispersé................................................................................................................................ 19
Les fonctions de hachage....................................................................................................................... 19
Les fonctions de hachage....................................................................................................................... 20
Complément : résolution des conflits de tables de hachages ................................................................ 20
Fichiers et entrées/sorties ............................................................................................................................... 21
Fichiers physiques, fichiers logiques........................................................................................................... 21
Assignation.............................................................................................................................................. 21
Ouverture ................................................................................................................................................ 21
Entrées/Sorties formatées........................................................................................................................... 22
Lecture .................................................................................................................................................... 22
Ecriture.................................................................................................................................................... 23
Lecture et écriture formatées en C ......................................................................................................... 23
Fermeture d'un fichier ............................................................................................................................. 23
Fichiers binaires .......................................................................................................................................... 23
Lecture et écriture binaires en C............................................................................................................. 23
Application : sauvegarde d'un tableau.................................................................................................... 24
Introduction à la cinématique des fichiers ................................................................................................... 24
Les listes chaînées .......................................................................................................................................... 25
Généralités .................................................................................................................................................. 25
Le type liste ................................................................................................................................................. 25
Opérations élémentaires sur les listes ........................................................................................................ 26
Déclaration et initialisation ...................................................................................................................... 26
Test de vacuité........................................................................................................................................ 26
Accès à la première information de la liste : la tête ................................................................................ 26
Accès à la deuxième composante : la queue ......................................................................................... 26
Ajout d'un élément en tête ...................................................................................................................... 27
Suppression de l'élément en tête............................................................................................................ 27
Autres opérations utiles sur les listes : notion de type abstrait ................................................................... 28
Longueur d'une liste................................................................................................................................ 28
Ajout en queue........................................................................................................................................ 28
Suppression du dernier élément............................................................................................................. 28
Insertion en une position donnée............................................................................................................ 29
Suppression d'un élément de position donnée....................................................................................... 30
Insertion triée (ou sur critère quelconque).............................................................................................. 30
Exemple d'utilisation ............................................................................................................................... 30
Structures récursives et croisées ................................................................................................................ 32