Aller au contenu

Différentes implémentations☘

Un même type abstrait de données peut être implémenté de différentes manières :

  • programmation itérative ;
  • programmation orientée objet ;
  • autre...

Pour l’utilisateur d’une telle structure, l’implémentation importe peu. Seule l’interface lui est nécessaire, ainsi que le respect des performances induites par la structure utilisée.

Les tableaux☘

Une interface minimale pour le TAD « tableau » est :

Méthode/Opérations Description
tab = Tableau(n) Initialisation d'un tableau vide de n éléments
est_vide(tab) Renvoie True si le tableau est vide, False sinon.
lg = longueur(tab) Renvoie le nombre d’éléments du tableau.
elt = valeur(tab, i) Renvoie la valeur de l'élément d’indice i
modifie(tab, i, elt) Modifie la valeur de l'élément d’indice i

Les piles☘

Une interface minimale pour le TAD « pile » est :

Méthode/Opérations Description
P = Pile() Initialisation d'une pile vide.
est_vide(P) Renvoie True si la pile est vide, False sinon.
P = empiler(P, elt) Empile un nouvel élément au sommet de la pile.
elt = depiler(P) Lorsque la pile n'est pas vide, supprime le sommet de la pile
et renvoie la valeur de ce sommet.

Les files☘

Une interface minimale pour le TAD « file » est :

Méthode/Opérations Description
F = File() Initialisation d'une file vide.
est_vide(F) Renvoie True si la file est vide, False sinon.
F = enfiler(F, elt) Enfile un nouvel élément en queue de la file.
elt = defiler(F) Lorsque la file n'est pas vide, supprime le premier élément de la file
et renvoie la valeur de cet élément.

Les listes☘

Une interface minimale pour le TAD « liste » est :

Méthode/Opérations Description
L = Liste() Initialisation d'une liste vide
est_vide(L) Renvoie True si la liste est vide, False sinon.
L = inserer_en_tete(L, elt) Ajoute un nouvel élément en tête de la liste.
La liste L devient le couple (elt, L)
elt = tete(L) Renvoie la valeur du premier élément
lst = queue(L) Renvoie la liste située en queue

Les tableaux associatifs☘

Une interface minimale pour le TAD « tableau associatif » est :

Méthode/Opérations Description
d = Dico() Initialisation d'un tableau associatif vide
est_vide(d) Renvoie True si le tableau associatif est vide, False sinon.
d = ajout(d, cle, valeur) Associe valeur à une nouvelle clef cle
modif(d, cle, valeur) Modifie la valeur associée à la clef cle
elt = valeur(d, cle) Renvoie la valeur associée à la clef cle
supprime(d, cle) Supprime la clef cle (et donc la valeur associée)