Structures de données abstraites



Documents pareils
Evaluation et mise en place d un serveur de messages pour Chamilo 2.0

Génie Logiciel avec Ada. 4 février 2013

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :

CHAPITRE 4 LA VALORISATION DES STOCKS COURS DE COMPTABILITE ANALYTIQUE SEMESTRE 2 DUT TC

Informatique III: Programmation en C++

Programmation Orientée Objet Java

TP1 : Initiation à Java et Eclipse

Logiciels de gestion sur mesure Etude et développement. Logiciel de suivi des évènements indésirables dans les établissements hospitaliers

E-Remises Paramétrage des navigateurs

Structure fonctionnelle d un SGBD

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

GESTION DE STOCKS AVEC CIEL GESTION COMMERCIALE

Présentation du site internet EcoleDirecte des Familles et Elèves

BONNE NOUVELLE, À PARTIR DE DEMAIN 15 AOÛT 2014, l inscription en ligne sera disponible à partir du site de l ARO.

Zotero : petit guide d installation et d utilisation

Paramètres WebConfig pour MOS Chorus

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

Fonctionnement du courrier électronique

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi module

OCLOUD BACKUP GUIDE DE REFERENCE POUR ANDROID

Structures dynamiques Listes chaînées

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr

Module d anonymisation

La gestion des serveurs de mail

Bases Java - Eclipse / Netbeans

Pour plus d informations consultez nos FAQS sur

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs

Idées et propositions de cours. «Cookies, Cache & Co!» NetLa Matériel pédagogique 6. Campagne pour la protection de la personnalité

2. Comprendre les définitions de classes

Encapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.

Aide Webmail. L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels.

Sécurité des applications web. Daniel Boteanu

SSL. Secure Socket Layer. R. Kobylanski janvier version 1.1 FC INPG. Protocole SSL Application avec stunnel

PRÉSENTÉ PAR : NOVEMBRE 2007

I-Fax (fax par Internet)

Mise en place SSO. Mise en place SSO. 1. Installation de Tomcat sur le serveur OCR (Windows) 2. Ajout des librairies. by LegalBox

My Plug 2. guide d utilisation. l espace personnel My Plug 2 vous propose un espace personnel où de nombreuses fonctionnalités s offrent à vous.

2. Cliquez Contact Directory of Public Administration. 5. Tapez le mot de passe - Hello (pour OFPA). Changez le mot de passe en cas de

Tessi Documents Services ASPONE. Démo Webservices UpValue.

Console IAP Manuel d utilisation

T. A. D. pile. Chapitre 7 (suite) Listes particulières. T. A. D. file. représentation chaînée de la file algorithmique. Files

Atelier de l Ecole doctorale : Latex, Lyx, and friends Chapitre 2 : Gestion de la bibliographie

Comment utiliser RoundCube?

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Programmation avec des objets : Cours 7. Menu du jour

Utilisation d objets : String et ArrayList

QUESTION 1 QUESTION 2 QUESTION 3 QUESTION 4. Que signifie "shortage"? Que signifie "handling"? Que signifie "raw material" Que signifie "tool"?

Manuel logiciel client for Android

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Paramétrage de compte mail netplus sur iphone et ipad

Java Licence Professionnelle Cours 7 : Classes et méthodes abstraites

Installation et utilisation d'un certificat

Introduction à la théorie des files d'attente. Claude Chaudet

Outlook Présentation.

Monitoring pour Quick EDD/HA et OPEN Jeudi 23 octobre 2008, Thierry Roux. Simple & Performant. software line.com

Analyse de problème Certificat (clé-usb) Mac

Programmer en JAVA. par Tama

ScolaStance V6 Manuel vie scolaire

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

Concept-Informatique 2007

TRANSFOLIO version Introduction

1. Introduction / Identification

Centre de Contacts Virtuel (CCV) GEN-IP SOLUTIONS

Comment utiliser mon compte alumni?

Assembleur. Faculté I&C, André Maurer, Claude Petitpierre

SPECIFICATIONS TECHNIQUES : Gestion des Médicaments et des commandes de médicaments

RoomMate Guide de l'utilisateur

Module 02 - Leçon 04 : Evaluation des stocks

Introduction à la programmation concurrente

Université Bordeaux 1, Licence Semestre 3 - Algorithmes et struct...

Journée Josy/PLUME. Outils logiciels libres utiles à tout ASR CUPS. Maurice Libes. Centre d'océanologie de Marseille UMS 2196 CNRS

Guide de commande Commander un certificat d identité numérique PersonalSign

Présentation de Ocloud

1) Information sur le logiciel et la notice 2) Le tableau de bord 3) Les devis 4) Les factures 5) Les factures d acompte 6) Les avoirs sur facture

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions

Serveur de partage de documents. Étude et proposition d'une solution afin de mettre en place un serveur de partage de documents.

Un ordonnanceur stupide

PARTAGER UN ANNUAIRE COLLECTIF DE SIGNETS AVEC DEL.ICIO.US

Les sauvegardes de l ordinateur

Exercices INF5171 : série #3 (Automne 2012)

GLPI et FusionInventory. Le retour d'expérience de 2 universités

Architecture des ordinateurs

GUIDE D'UTILISATION DU SYSTEME TELEPHONIQUE POLYCOM

Application BdD et JDBC. Introduction 1/28. I Dans tout les cas, une seule problématique. I Quelques alternatives :

TP JAVASCRIPT OMI4 TP5 SRC

Editer un script de configuration automatique du proxy

Descriptif de Kelio Protect

Contenu de la version 3.4 C I V I L N E T A D M I N I S T R A T I O N

CIRCULAIRE N 1668 DU 27/10/2006. Tous réseaux

Le front office (utilisateur client):

Mozaïk. Nouveautés et améliorations. de la version

Initiation à la Programmation en Logique avec SISCtus Prolog

Le protocole IPv6 sur le Réseau Académique Parisien

OCL - Object Constraint Language

Points forts : Amélioration du service clientèle grâce aux processus de vente plus efficaces. Amélioration du service au client

Transcription:

Structures de données abstraites

Piles (stack) Principe Interface (fonctionnalités offertes)

Piles (stack) Principe Interface (fonctionnalités offertes)

Piles (stack) Principe Structure linéaire Interface (fonctionnalités offertes)

Piles (stack) Principe Structure linéaire Principe LIFO (Last In First Out) Interface (fonctionnalités offertes)

Piles (stack) Principe Structure linéaire Principe LIFO (Last In First Out) Exemple : Pile de livres, d assiettes Bouton «précédent» de Firefox Interface (fonctionnalités offertes)

Piles (stack) Principe Structure linéaire Principe LIFO (Last In First Out) Exemple : Pile de livres, d assiettes Bouton «précédent» de Firefox Interface (fonctionnalités offertes) Stack() : constructeur crée une pile

Piles (stack) Principe Structure linéaire Principe LIFO (Last In First Out) Exemple : Pile de livres, d assiettes Bouton «précédent» de Firefox Interface (fonctionnalités offertes) Stack() : constructeur crée une pile push(item) : empile un item sur la pile

Piles (stack) Principe Structure linéaire Principe LIFO (Last In First Out) Exemple : Pile de livres, d assiettes Bouton «précédent» de Firefox Interface (fonctionnalités offertes) Stack() : constructeur crée une pile push(item) : empile un item sur la pile pop() : enlève et retourne l élément du haut de la pile

Piles (stack) Principe Structure linéaire Principe LIFO (Last In First Out) Exemple : Pile de livres, d assiettes Bouton «précédent» de Firefox Interface (fonctionnalités offertes) Stack() : constructeur crée une pile push(item) : empile un item sur la pile pop() : enlève et retourne l élément du haut de la pile isempty() : renvoie True si la pile est vide

Piles (stack) Principe Structure linéaire Principe LIFO (Last In First Out) Exemple : Pile de livres, d assiettes Bouton «précédent» de Firefox Interface (fonctionnalités offertes) Stack() : constructeur crée une pile push(item) : empile un item sur la pile pop() : enlève et retourne l élément du haut de la pile isempty() : renvoie True si la pile est vide getsize() : taille de la pile

Piles (utilisation)

s = Stack() Piles (utilisation)

Piles (utilisation) s = Stack() Stack

Piles (utilisation) s = Stack() s.isemtpy() Stack

Piles (utilisation) s = Stack() s.isemtpy() True Stack

Piles (utilisation) s = Stack() s.isemtpy() Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() 3 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() False 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() 5 s.is_empty() hello s.push(8.4) 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) 8.4 s.push(5) s.size() 5 s.is_empty() hello s.push(8.4) 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() 8.4 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() 8.4 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() s.pop() 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() s.pop() 5 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() s.pop() hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() s.pop() s.printcontent() hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() s.pop() s.printcontent() hello 4 hello 4 Stack

Piles (utilisation) s = Stack() s.isemtpy() s.push(4) s.push( hello ) s.push(5) s.size() s.is_empty() s.push(8.4) s.pop() s.pop() s.printcontent() hello 4 Stack

Application : inversion d une liste

Application : inversion d une liste Liste1 = [1,2,3,4,5] Liste2 = [] s = Stack() for item in Liste1: s.push(item) while not s.is_empty(): Liste2.append(s.pop()) Liste1 1 2 3 4 5 s Liste2

Application : inversion d une liste Liste1 = [1,2,3,4,5] Liste2 = [] s = Stack() for item in Liste1: s.push(item) while not s.is_empty(): Liste2.append(s.pop()) Liste1 1 2 3 4 5 5 4 3 2 1 s Liste2

Application : inversion d une liste Liste1 = [1,2,3,4,5] Liste2 = [] s = Stack() for item in Liste1: s.push(item) while not s.is_empty(): Liste2.append(s.pop()) Liste1 1 2 3 4 5 s Liste2 5 4 3 2 1

Files (Queues) Principe Interface (fonctionnalités offertes)

Files (Queues) Principe Interface (fonctionnalités offertes)

Files (Queues) Principe Structure linéaire Interface (fonctionnalités offertes)

Files (Queues) Principe Structure linéaire Principe FIFO (First In First Out) Interface (fonctionnalités offertes)

Files (Queues) Principe Structure linéaire Principe FIFO (First In First Out) Exemple : Queues à la cafétéria Files d attente d un serveur d impression Interface (fonctionnalités offertes)

Files (Queues) Principe Structure linéaire Principe FIFO (First In First Out) Exemple : Queues à la cafétéria Files d attente d un serveur d impression Interface (fonctionnalités offertes) Queue() : constructeur crée une file

Files (Queues) Principe Structure linéaire Principe FIFO (First In First Out) Exemple : Queues à la cafétéria Files d attente d un serveur d impression Interface (fonctionnalités offertes) Queue() : constructeur crée une file enqueue(item) : enfile un item vers l arrière de la file

Files (Queues) Principe Structure linéaire Principe FIFO (First In First Out) Exemple : Queues à la cafétéria Files d attente d un serveur d impression Interface (fonctionnalités offertes) Queue() : constructeur crée une file enqueue(item) : enfile un item vers l arrière de la file dequeue() : enlève et retourne l élément de l avant de la file

Files (Queues) Principe Structure linéaire Principe FIFO (First In First Out) Exemple : Queues à la cafétéria Files d attente d un serveur d impression Interface (fonctionnalités offertes) Queue() : constructeur crée une file enqueue(item) : enfile un item vers l arrière de la file dequeue() : enlève et retourne l élément de l avant de la file isempty() : renvoie True si la file est vide

Files (Queues) Principe Structure linéaire Principe FIFO (First In First Out) Exemple : Queues à la cafétéria Files d attente d un serveur d impression Interface (fonctionnalités offertes) Queue() : constructeur crée une file enqueue(item) : enfile un item vers l arrière de la file dequeue() : enlève et retourne l élément de l avant de la file isempty() : renvoie True si la file est vide getsize() : taille de la pile

Files (utilisation) Évolution de la file :

Files (utilisation) q = Queue() Évolution de la file : q

Files (utilisation) q = Queue() q.is_emtpy() Évolution de la file : q

Files (utilisation) q = Queue() q.is_emtpy() True Évolution de la file : q

Files (utilisation) q = Queue() q.is_emtpy() Évolution de la file : q

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) Évolution de la file : q 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) Évolution de la file : q hello 4 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() Évolution de la file : q hello 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() 2 Évolution de la file : q hello 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() Évolution de la file : q hello 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() Évolution de la file : q hello 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() False Évolution de la file : q hello 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() Évolution de la file : q hello 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() s.enqueue(8.4) Évolution de la file : q hello 8.4 hello 4 4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() s.enqueue(8.4) s.dequeue() 4 Évolution de la file : q 8.4 hello

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() s.enqueue(8.4) s.dequeue() s.dequeue() hello Évolution de la file : q 8.4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() s.enqueue(8.4) s.dequeue() s.dequeue() Évolution de la file : q 8.4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() s.enqueue(8.4) s.dequeue() s.dequeue() s.printcontent() Évolution de la file : q 8.4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() s.enqueue(8.4) s.dequeue() s.dequeue() s.printcontent() 8.4 Évolution de la file : q 8.4

Files (utilisation) q = Queue() q.is_emtpy() q.enqueue(4) q.enqueue( hello ) s.size() s.is_empty() s.enqueue(8.4) s.dequeue() s.dequeue() s.printcontent() Évolution de la file : q 8.4