- Tableau (structure de donnees)
-
Tableau (structure de données)
Pour les articles homonymes, voir Tableau.En informatique, un tableau (array en anglais) est une structure de données de base qui est un ensemble d'éléments (des variables ou autres entités contenant des données), auquel on a accès à travers un numéro d'index (ou indice).
Dans les langages classiques, tous les éléments d'un tableau doivent être du même type. Dans les langages de plus haut niveau (comme Python, APL, etc.), cette restriction n'existe plus.
Sommaire
Performances et limites
Le temps d'accès à un élément par son index est constant, quel que soit l'élément désiré. Cela s'explique par le fait que les éléments d'un tableau sont contigus dans l'espace mémoire. Avec l'index, on sait donc à combien de cases mémoire se trouve l'élément en partant du début du tableau.
Les limites d'une telle structure viennent de son avantage. Un tableau étant représenté en mémoire sous la forme de cellules contiguës, les opérations d'insertion et de suppression d'élément sont impossibles, sauf si on crée un nouveau tableau, de taille plus grande ou plus petite (selon l'opération). Il est alors nécessaire de copier tous les éléments du tableau original dans le nouveau tableau, puis de libérer l'espace mémoire alloué à l'ancien tableau. Cela fait donc beaucoup d'opérations et oblige certains langages fournissant de telles possibilités à implémenter leurs tableaux, non pas sous la forme traditionnelle (cellules adjacentes), mais en utilisant une liste chaînée, ou une combinaison des deux structures pour améliorer les performances.
Tableau à une dimension
Avec un tableau à une dimension (aussi appelé un vecteur), un numéro d'index donne accès à un seul élément. L'image de droite géométrique est une représentation graphique d'une telle structure de données, composée de 7 éléments.
En algorithmique, un tableau se déclare comme suit :
nomdutableau [valdebut..valfin] : Tableau de type
En langage C par exemple, on accède au premier élément d'un tableau nommé tab de la manière suivante :
tab[0];
En prenant le tableau en exemple, cette instruction retournera 45. Il est important de savoir que la numérotation de l'index commence à 0.
Tableau à deux dimensions (ou plus)
La création d'un tableau à deux dimensions (aussi appelé matrice) permet l'accès à plus d'une valeur à partir d'un indice. Autrement dit, un numéro d'index pointe sur un autre tableau. L'image d'un peigne représente une telle structure de données.
Comme on le voit, le premier tableau est composé de pointeurs vers des tableaux. L'accès à un élément se fait donc à travers deux indices.
En langage C, l'accès au troisième élément du quatrième tableau se fait de la manière suivante :
tab[3][2];
Cette instruction retournera 58.
Il n'y a pas de limite au nombre de dimensions (mises à part leur utilité et la taille de la mémoire disponible). Ainsi, l'accès à un élément dans un tableau à n dimensions (où n est un entier naturel non nul) se fait à l'aide de n indices (un indice pour chaque dimension).
La position (ou ordre) des indices est cruciale. Dans l'exemple précédent, l'élément désigné par tab[3][2] (de valeur 58) diffère de l'élément indexé par tab[2][3] (de valeur 89).
Tableau trié
Un Tableau trié est un tableau dont les éléments sont ordonnés selon une relation d'ordre total.
Tableau croisé dynamique
Article détaillé : Tableau croisé dynamique.Tableaux connus
- Autres sens dans le Wiktionnaire : voir la page consacrée à tableau.
- Portail de la programmation informatique
Catégorie : Structure de données
Wikimedia Foundation. 2010.