La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Piles et files.

Présentations similaires


Présentation au sujet: "Piles et files."— Transcription de la présentation:

1 Piles et files

2 Sommaire Introduction Piles Files Files de priorités
 Analyse d'expressions arithmétiques Chapitre 4 Data Structures & Algorithm, 2nd Edition, Robert Lafore

3 Introduction Tableaux, listes chaînées, arbres, etc.
Appropriés pour représenter les données du monde réel Facilitent l'accès aux données : insertion, suppression et recherche Piles, files, etc., Outils de programmation Durée de vie plus courte Prise en charge de certaines tâches Accès restreint : un seul élément est accessible L'interface renforce l'accès restreint  Abstraction Piles, files et files de priorités : abstraites Interface : opérations possibles Implémentation non visible

4 Piles Pile : conteneur implémentant le protocole dernier entré, premier sortie (LIFO) Objet accessible : dernier entré Accès à l'avant dernier : enlever le dernier Utile dans plusieurs situations de programmation  Contrôle : parenthèses, crochets, accolades  Analyse : expression arithmétique

5 Piles Opérations Empiler une valeur au sommet d'une pile;
Remplacer la valeur du sommet d'une pile; Dépiler la valeur du sommet d'une pile; Savoir si une pile est vide; Obtenir la longueur d'une pile; Déterminer la valeur du sommet d'une pile.

6 Piles Opérations

7 Piles Voir EXPILE-FILE (méthode main())

8 Piles Voir EXPILE-FILE (méthode testPile())

9 Piles Voir EXPILE-FILE (classe Pile()) ……

10 Piles Voir EXPILE-FILE (classe Pile()) suite …

11 Piles Applications possibles Inverser un mot, une phrase
Valider les délimiteurs dans une expression arithmétique Valider les délimiteurs dans un programme ({})

12 Files (queue)  Nous connaissons tous la notion de file …. d’attente

13 Files (queue)  File : implémente le protocole premier entré, premier sortie (FIFO) Objet accessible : objet inséré en premier Utile dans plusieurs situations : Programmation Systèmes d'exploitation Monde réel Opérations :  Déposer une valeur à la fin d'une queue ;  Prélever la valeur du début d'une queue  Savoir si une queue est vide  Obtenir la longueur d'une queue  Déterminer la valeur du début d'une queue

14 Files (queue) Opérations :

15 Files (circulaire) Avec une file standard: Insertion : fin (rear) se déplace vers le haut Avec un file standard: Suppression : début (front) se déplace vers le haut Quand l’Index = N-1 => il devient impossible d'insérer malgré les emplacements libres  Avec une file circulaire, l’indice suivant de la position N-1 et la position 0 : Rear et Front s'enroulent autour du début du tableau Il faut alors maintenir cette relation durant les opérations d'insertion et de suppression Rear en dessous de Front, ne dépasse pas Front

16 Files (circulaire) Opérations

17 Files (queue) Voir EXPILE-FILE (classe File())

18 Files (queue) Voir EXPILE-FILE (classe File()) suite ….

19 Files (queue) Voir EXPILE-FILE (classe File()) suite ….

20 Files de priorité Une queue de priorité est une queue pour laquelle l'insertion à lieu en fonction d'un critère donné  Queue triée selon un critère donné  Conteneur BIFO : l'élément avec la plus grande priorité est le premier à sortir  Largement utilisée dans les systèmes informatisées : imprimantes réseau – petits travaux prioritaires  Insertion : selon critère  Queue de priorités : tas  Rear et Front : aucun rôle en particulier

21 Files de priorité Opérations

22 Analyse d’expressions arithmétiques
Structure utilisée: PILE Par exemple avec les expressions suivantes: 2 * (3 + 4) ((2 + 4) * 7) + 3 * (9 – 5) L'évaluation de ce type d'expression se fait en deux étapes : transformation de l'expression arithmétique dans une forme différente : notation post- fixée; évaluation de l'expression post-fixée Différentes formes d’expression Notation in-fixée : L'opérateur est placé entre les deux opérandes Notation post-fixée : L'opérateur est placé après les deux opérandes  Notation pré-fixée : L'opérateur est placé avant les deux opérandes

23 Analyse d’expressions arithmétiques
Exemple d’expressions et formes

24 Analyse d’expressions arithmétiques
Pour transformer une expression in-fixée en une expression post-fixée :  réarranger les opérandes et les opérateurs dans un format particulier  résultat : évalué plus tard Exemple : A + B * C

25 Analyse d’expressions arithmétiques
Exemple : A + B * C

26 Analyse d’expressions arithmétiques
Exemple:

27 Analyse d’expressions arithmétiques
Algorithme de transformation


Télécharger ppt "Piles et files."

Présentations similaires


Annonces Google