Dissertation

Pages: 19 (4561 mots) Publié le: 13 juin 2012
Chapitre VI : SRUCTURE DE DONNEES AVANCEES I- PILES et FILES II- LISTES CHAINEES III- TRI PAR TAS III.1 CONSERVATION DE LA STRUCTURE DE TAS III.2 CONSTRUCTION D’UN TAS III.3 ALGORITHME DE TRI PAR TAS IV- ARBRES BINAIRES DE RECHERCHE (A.B.R) IV.1 INRODUCTION IV.2 REQUETES DANS UN A.B.R IV.3 INSERTION ET SUPPRESSION

1

Chapitre VI : STRUCTURES DE DONNEES AVANCEES INTRODUCTION Il s’agit del’étude de la représentation d’ensemble dynamique à l’aide de structures de données simples, utilisant les pointeurs. I- PILES et FILES Ce sont des ensembles dynamiques pour lesquels l’élément ôté de l’ensemble par l’opération de modification SUPPRIMER est spécifié à l’avance. • Dans une PILE, cet élément correspond à celui récemment inséré : la pile met en œuvre le principe du « dernier entré, premiersorti » (LIFO : Last In – First out). • Dans une FILE, cet élément correspond toujours à celui qui est présent depuis plus de temps dans l’ensemble. La file met en œuvre le principe « premier entré, premier sorti » (FIFO : First In – First out). Il existe plusieurs manières d’implémenter des piles et des files dans un ordinateur. Ici nous allons montrer comment parvenir à l’aide de simple tableau.I.1 PILES Dans une pile, l’opération INSERER est souvent appelé EMPILER et l’opération SUPPRIMER (qui ne prend pas d’argument) est souvent appelé DEPILER. P a) 1 15 6 2 3 2 4 9 5 6 7

sommet [P] = 4 P b) 1 15 2 6 3 2 4 9 5 17 6 3 7

sommet [P] = 6 P c) 1 15 2 6 3 2 4 9 5 17 6 7

sommet [P] = 5 Cette représentation traduit l’implémentation d’un tableau. a) P contient 4 éléments, le sommet estoccupé par 9. b) Apres EMPILER (P, 17) et EMPILER (P, 3). c) Ensuite DEPILER (P) retourne 3, l’élément le plus récemment empilé. Le sommet de la pile est maintenant occupé par 17. On peut implémenter une pile d’au plus n éléments avec un tableau P [1…n]. Le tableau possède un attribut sommet [P], indexant l’élément le plus récemment inséré. P [1], P [2], …, P [sommet [P]], en sont les éléments.

2 P [1] est l’élément à la base et P [sommet [P]] est l’élément au sommet. • Quand sommet [P] = 0, la pile est vide. On peut tester l’opération de requête PILE_VIDE pour voir si oui/non, la pile est vide. Tester DEPILER une pile_vide est qualifié de débordement négatif. • Lorsque sommet [P]> n, on dit que la pile déborde. • Pseudo codes pour implémenter chaque opération de pile. PILE_VIDE (P :tableau [1..n] d’entier) Début Si sommet [P] = 0 alors Retourner .vrai. Sinon Retourner faux Fin si Fin

PILE_PLEINE (P: tableau [1..n] d’entier) Début Si sommet [P] = n alors Retourner .vrai. Sinon Retourner faux Fin si Fin EMPILER (P: tableau [1..n] d’entier, x : entier) Début sommet [P] sommet [P]+1 P [sommet [P]] x Fin EMPILER (P: tableau [1..n] d’entier, x : entier) Début Si non (PILE_PLEINE(P)) alors sommet [P] sommet [P]+1 P [sommet [P]] x Sinon Afficher (‘la pile déborde’) Fin si Fin

3

DEPILER (P: tableau [1..n] d’entier) Début Si PILE_VIDE (P) alors Afficher débordement négatif Sinon sommet [P] sommet [P]-1 retourner P [sommet [P]+1] Fin si Fin I.2 FILES On appelle ENFILER, l’opération INSERER sur une file et DEFILER l’opération SUPPRIMER. DEFILER ne prend pas d’argument àl’instar de l’opération DEPILER. La File comporte une tête et une queue, compte tenu de sa structure FIFO. L’élément enfilé prend toujours place à la queue de la file, tandis que l’élément défilé est toujours le premier en tête de la file. F 1 2 3 4 5 6 7 8 9 10 11 12 15 6 9 8 4 a) Tête [F] = 7 queue [F] = 12 F b) queue [F] = 3 Tête [F] = 7 1 3 2 5 3 4 5 6 7 15 8 6 9 9 10 8 11 4 12 17

F c)

1 3

2 53

4

5

6

7

8 6

9 9

10 8

11 4

12

queue [F] = 12

Tête [F] = 8

Cela traduit l’implémentation d’une File à l’aide d’un tableau F [1,..., 12]. a) la file contient 5 éléments aux emplacements F [7,…, 11]. b) Apres ENFILER (F, 17), ENFILER (F, 3) et ENFILER (F, 5). c) Apres DEFILER (F) qui retourne la valeur de clé 15 précédemment en tête de File. La nouvelle tête à pour clé 6. On peut...
Lire le document complet

Veuillez vous inscrire pour avoir accès au document.

Vous pouvez également trouver ces documents utiles

  • Dissertation
  • Dissertation
  • Dissertation
  • dissertation
  • dissertation
  • dissertation
  • Dissertations
  • dissertation

Devenez membre d'Etudier

Inscrivez-vous
c'est gratuit !