Le vol d'icare
1. Introduction Le but de ce chapitre est de décrire des représentations des structures de données de base telles les listes en général et deux forme restreintes: les piles et les files. L’autre but recherché est de voir l’importance de ces structures à travers quelques exemples d’applications 2. Les listes Les listes sont des structures de données informatiques qui permettent, au même titre que les tableaux par exemple, de garder en mémoire des données en respectant un certain ordre : on peut ajouter, enlever ou consulter un élément en début ou en fin de liste, vider une liste ou savoir si elle contient un ou plusieurs éléments.
2.1. Quelques opérations sur les listes 1. tester si la liste est vide (ou la mettre à vide) 2. accéder au kème élément de la liste (pour le modifier, supprimer, etc ...) 3. insérer un nouvel élément derrière le kème 4. fusionner 2 listes 5. rechercher un élément d'une valeur particulière 6 . trier 7) … etc. 1
But: en fonction des opérations choisies, choisir une représentation interne pour lesquelles les opérations sont efficaces. 2.2 Implantation des listes. Il existe plusieurs méthodes pour implémenter des listes. Les plus courantes sont l’utilisation de tableaux et de pointeurs. A. Utilisation de tableaux : implémenter une liste à l’aide d’un tableau n’est pas très compliqué. Les éléments de la liste sont simplement rangés dans le tableau à leur place respective.Cependant, l’utilisation de tableaux possède quelques inconvénients : o La dimension d’un tableau doit être définie lors des déclarations et ne peut donc pas être
modifiée « dynamiquement » lors de l’exécution d’un programme. La solution consiste donc à définir un tableau dont la taille sera suffisante pour accueillir la plus grande liste pouvant être utilisée, et d’associer au tableau une variable indiquant le nombre d’éléments contenus dans le tableau. o Le tableau étant surdimensionné, il