Piles et files.

Slides:



Advertisements
Présentations similaires
Structures de données et complexité
Advertisements

Structures de données et complexité LIFO – FILO – FIFO – etc…
Structures de données linéaires
Structures de données IFT-2000
Piles Premier arrivé, dernier servi: LIFO (Last In, First Out) Liste à usage restreint: Enlève et insère un élément seulement à un bout de la liste. Notation:
Structures de données IFT-10541
Introduction à la notion de fonction 1. Organisation et gestion de données, fonctions 1.1. Notion de fonction ● Déterminer l'image d'un nombre par une.
CINI – Li115 1 Semaine 9 Algorithmes de tri ● Introduction ● Tri à bulle ● - principe ● - algorithme ● - efficacité ● Tri par sélection ● - principe, algorithme,
Tableaux et Pointeurs Chaînes de Caractères Programmation Impérative II.
Stéphane Frénot, Frederique Laforest, Frédéric Le-Mouël IJA 1 TD 6 IJA Structures de données JAVA.
1 Programmation en C++ C++ de base ● Programme C++ ● Variables, objets, types ● Fonctions ● Namespace ● Tests ● Boucles ● Pointeurs, références.
1 Observer le paramétrage d’un réseau. 2 Dans notre réseau téléphonique habituel, les postes, reliés à un auto-commutateur... …peuvent dialoguer, car.
MODÉLISATION chapitre 4
Construction d’une maquette pour un mélange de 4 constituants
Les tableaux différencier les variables simples des variables indicées (ordonnées et numérotées) un identificateur unique désigne un ensemble, une collection.
Les Instructions Itératives (Les Boucles)
Structure et Services « STS » Menu Structures : Divisions
Quelques Termes INFORMATIQUE ? ORDINATEUR ( Système Informatique)?
Pas de variable globale
Langage de manipulation de données (LMD)
Visite guidée - session 8 L’ordonnancement Métier : Fabrication
5 – PARALLELISME , ORDONNANCEMENT
Semaine #1 INF130 par Frédérick Henri.
Javadoc et débogueur Semaine 03 Version A17.
I21 Algorithmique et programmation II
Informatique et Sciences du Numérique
Gestion Administrative
Références.
Les bases de données et le modèle relationnel
CCNP Routage Chapitre 4 - Questionnaire N°1
Exercice 7 : résoudre sin x + cos x = (√6)/2
3-Pile et File Définitions Primitives de piles, exemples
Semaine #6 INF130 par Frédérick Henri.
Présentation Structure données abstraite (TDA) Rappel : File
Plan Introduction Parcours de Graphe Optimisation et Graphes
Les interfaces en PHP.
MOYENNE, MEDIANE et ECART TYPE d’une série statistique
Programmation système
Piles.
L’I NSTRUCTION DE T EST A LTERNATIF Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie – Université A.Mira, Bejaia Année.
Cours N°9: Algorithmiques Les Tableaux 1
Programmation en C++ C++ de base
Modélisation avec UML 2.0 Partie II Diagramme de classes.
Chapter 12: Structures de données
« Ciné-critique en SES »
C HAPITRE II: S TRUCTURES S ÉQUENTIELLES Université Saad Dahlab – Blida1 Faculté des Sciences Département d’Informatique Licence d’Informatique Semestre.
Les structures de base Listes chainées. Listes Les listes(similaire aux tableaux) sont des structures informatiques qui permettent de garder en mémoire.
BUFFER CIRCULAIRE Meryem EL BAKRI. PLAN Introduction Buffer circulaire Fonctionnement.
Information, Calcul, Communication
Prelude 7 ERP Detailed Scheduling 23/02/2019
Structure de données utiles
Tris Simples/Rapides.
Programmation Scratch
© Robert Godin. Tous droits réservés.
LISTES.
Passage primaire-secondaire
Chapitre 2 : Représentation de l’information dans la machine Introduction Représentation des nombres négatifs –Signe / valeur absolue –Complément à 1 –Complément.
Listes Chaînées.
Arbre binaire.
Cinématique directe Où est ma main? Cinématique directe : ICI!
© Robert Godin. Tous droits réservés.
GESTION DE LA PRODUCTION Réalisé par : EL MAROUSSI Mohammed DRIOUCHI Mohammed Abdeljabbar WAKENNOU Salah CRMEF Grand Casablanca Cycle de préparation à.
Structure de données Les listes.
TP N°1 : GUI en NetBeans Module R & C Université de Jijel
DICTIONNAIRES (MAPS).
Codification et représentation de l’information Enseignant: Mahseur mohammed Groupe FB: mi2016ua1 Chaine YT: Cours informatique.
Dridi Lobna 1 Couche Réseau II Réseau : Gestion de l’accès.
DONNÉE DE BASE QM Manuel de formation. Agenda 2  Introduction  Objectif de la formation  Données de base QM: Caractéristique de contrôle Catalogue.
La programmation dynamique
Transcription de la présentation:

Piles et files

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

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

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

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.

Piles Opérations

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

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

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

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

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

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

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

Files (queue) Opérations :

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

Files (circulaire) Opérations

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

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

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

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

Files de priorité Opérations

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

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

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

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

Analyse d’expressions arithmétiques Exemple:

Analyse d’expressions arithmétiques Algorithme de transformation