Introduction aux listes. Cours numéro 5 : Les listes LI213 Types et Structures de données. Les listes simplement chaînées
|
|
- Rémy David
- il y a 8 ans
- Total affichages :
Transcription
1 Introduction aux s LI Types et Structures de données Liste : définition Collection ordonnée d éléments [x ;...; x n ] (au moins) accessibles l un après l autre de x jusqu à x n. Exemple : dans la [ ; ;5 ; ;6], on peut accéder à. À partir de, on peut accéder à, et ainsi de suite. Licence d Informatique Université Paris 6 Cette définition ne présuppose rien sur la représentation en mémoire. En principe, pas de contrainte sur le nombre d éléments dans la. Les s simplement chaînées récursive : une est composée d un élément (la tête) suivi par la des éléments suivants (la queue). Illustration graphique : x x x Les seuls opérateurs : Un opérateur pour accéder à la tête : car en LISP/Scheme, hd en OCAML. Un opérateur pour accéder à la queue : cdr en LISP/Scheme, tl en OCAML. toujours faire un dessin indiquant comment sont chaînés les éléments. Vous pensez pouvoir vous en passer? OK, vous aurez des bugs, à vous de voir... Intérêt des s chaînées (/) x x x Les flèches sont des pointeurs = en mémoire, les boites ne sont pas placées les unes à côté des autres Avantages des s simplement chaînées Suppression d un élément facile et rapide : parcourir la jusqu à l élément à supprimer puis rechaîner x x x... On peut rajouter autant d éléments que l on veut Utilisation d un espace mémoire proportionnel au nombre d éléments (= pas de perte de mémoire) x n
2 Inconvénients des s chaînées (/) Les s doublement chaînées x x x Inconvénients des s simplement chaînées Temps d accès aux éléments : il faut en moyenne parcourir n/ éléments avant de trouver un élément donné. Conclusion : utilisation C est une structure à utiliser : quand effectue souvent des ajouts/suppressions d éléments, quand on ne sait pas a priori combien on aura d objets x i Similaire à une simplement chaînée sauf qu on peut aussi accéder au prédécesseur. Illustration graphique : x x x Inconvénients du double chaînage par rapport au simple chaînage : chaînage plus complexe à gérer ( pointeurs au lieu d un) utilise plus de mémoire Avantages du double chaînage par rapport au simple chaînage : suppression d un élément plus rapide : rechaîner autour de l élément à supprimer = parcours de inutile Les s circulaires Listes telles que le «dernier» élément de la a pour suivant le «premier» Illustration graphique : x x x x n circulaire simplement chaînée x x x x n circulaire doublement chaînée Utilisation : exécution de threads (fonctions s exécutant en concurrence ( en parallèle)) bilan : comparaison avec les tableaux nb d éléments arbitraire borné accès aux éléments lent (parcours) rapide tableau insertion au début rapide lente (décalages) insertion en fin lente (parcours) rapide insertion au milieu lente (parcours) lente (décalages) suppression rapide (rechaînage) lente (décalages) Règle : Utiliser plutôt des tableaux sauf si : on doit faire beaucoup de suppressions on ne connaît pas le nombre d éléments maximal a priori
3 Listes en OCAML type a list d OCAML : s simplement chaînées La Core Library [] = la vide [6 ; 7 ; ] = de entiers :: concaténation d un élément avec une : :: [ ; ;] = [ ; ; concaténation de s : [ [ ;] = [ ; ; ;] Librairie standard : le module List hd : a list -> a : renvoie la tête de la tl : a list -> a list : renvoie la queue de la Parcours d une (/) # open List ;; let rec somme = if = [] then 0 else hd + somme (tl ) ;; #trace somme ;; somme [5 ; 6 ; 7];; val somme : int list -> int = <fun> somme <-- [5 ; 6 ; 7] somme <-- [6 ; 7] somme <-- [7] somme <-- [] somme --> 0 somme --> 7 somme --> somme --> 8 - : int = 8 tester la fin de la récursion avant l appel récursif Parcours d une (/) Parcours d une s d une en OCAML type a list = [] a :: a list type somme - cf. cours 6 = possibilité de matching : [] -> = vide x :: reste -> x = tête de reste = queue de Règle : Parcourez les s en utilisant le matching plutôt que hd et tl Règle : Profitez au maximum de la puissance du matching! # let rec somme = [] -> 0 tete :: queue -> tete + somme queue ;;
4 Exemple de parcours Recherche du dernier élément d une : # let rec dernier = [ x ] -> x tete :: queue -> dernier queue [] -> failwith " vide";; Recherche de l avant-dernier élément : # let rec avant dernier = x :: y :: [] -> x tete :: queue -> avant dernier queue -> failwith "pas assez d éléments";; Parcours simultané de s # let = [ ; ; ; ] and = [5 ; 6] ;; let rec ajoute l l = match (l,l) with l,[] -> l [],l -> l tete :: queue, tete ::queue -> (tete + tete) :: ajoute queue queue ;; ajoute ;; - : int list = [6 ; 8 ; ; ] ajoute [ ; ; ; ] [5 ; 6] [6 ; 8 ; ; ] ( + 5) :: (ajoute [ ; ; ] [6]) [6 ; 8 ; ; ] ( + 6) :: (ajoute [ ; ] []) [8 ; ; ] [ ; ] [ ; ] Le filtre n importe quel motif! Rappel : identifiants dans le matching # let position elt = let rec recherche nb = elt :: reste -> nb tete :: reste -> recherche reste (nb+) [] -> failwith "élément non trouvé" in recherche 0 ;; position [ ; ; ; ] ;; val position : a list -> b -> int = <fun> - : int = 0 Retourne 0 au lieu de Rappel : les identifiants qui apparaissent dans les motifs sont non liés. Le filtrage les lie localement à des parties de la valeur filtrée. Insertion en début de # let insere debut elt = elt : : ;; let = [ ; ; ] ;; insere debut ;; val insere debut : a list -> a -> a list = <fun> val : int list = [ ; ; ] - : int list = [ ; ; ; ] insertion rapide (pas de parcours de ) ne modifie pas la mais éléments partagés avec
5 Insertion en fin de # let rec insere fin elt = tete :: queue -> tete :: insere fin queue elt [] -> [elt] ;; let = [ ; ; ] ;; insere fin ;; insertion lente : parcours de aucun élément partagé avec Insertion après un élément # let rec insere apres elt after = tete :: queue -> if tete = after then after :: elt :: queue else tete :: insere apres queue elt after [] -> [] ;; insere apres [ ; ; 5 ; 6] ;; - : int list = [ ; ; ; 5 ; 6] retournée insertion lente : parcours de fin de partagée avec 5 6 Suppression en début de # let suppression debut = tete :: queue -> queue [] -> [] ;; let = [ ; ; ; ] ;; suppression debut ;; - : int list = [ ; ; ] suppression rapide (pas de parcours) ne modifie pas la mais retourne une partagée Suppression en fin de # let rec suppression fin = [ ] -> [] tete :: queue -> tete :: suppression fin queue [] -> [] ;; suppression fin [ ; ; ; ];; - : int list = [ ; ; ] suppression lente : parcours de aucun élément partagé avec
6 Suppression après un élément # let rec suppr apres after = un :: deux :: queue -> if un = after then un :: queue else un :: suppr apres (deux :: queue) after -> ;; suppr apres [ ; ; ; 5 ; 6] ;; - : int list = [ ; ; 5 ; 6] retournée suppression lente : parcours de fin de partagée avec 5 6 Fonction iter iter : ( a -> unit) -> a list -> unit iter f [a ;... ; an] applique la fonction f à tour de rôle à a, puis a, etc. équivalent à (f a ; f a ;... ; f an ; ()) Exemple # let f x = print string ("nombre : " ˆ string of int x ˆ "\n") ;; List.iter f [ ; ; ; ];; nombre : nombre : nombre : nombre : - : unit = () Fonction map Fonction fold left map : ( a -> b) -> a list -> b list f [a ;... ;an] retourne la [f a ;... ;f an] Exemples # List.map string of int [ ; ; ; ];; - : string list = ["" ; "" ; "" ; ""] # let f x = x * x ;; List.map f [ ; ; ; ];; - : int list = [ ; ; 9 ; 6] fold left : ( a -> b -> a) -> a -> b list -> a fold left f a [b ;... ; bn] retourne la valeur de l expression f (... (f (f a b) b)...) bn Exemples # let f str nb = str ˆ " " ˆ (string of int nb) ;; List.fold left f "nombre :" [ ; ; ; ];; - : string = "nombre : " # let somme nb nb = nb + nb ;; List.fold left somme 0 [ ; ; ; ] ;; List.fold left (+) 0 [ ; ; ; ];; 0 0
7 Fonction fold right fold right : ( a -> b -> b) -> a list -> b -> b fold right f [a ;... ; an] b retourne la valeur de l expression f a (f a (... (f an b)...)) Exemple # let f nb str = str ˆ " " ˆ (string of int nb) ;; List.fold right f [ ; ; ; ] "nombre :";; - : string = "nombre : "
# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>
94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue
Plus en détailmodules & compilation
Programmation fonctionnelle avec OCaml 3ème séance, 19 mars 2015 modules & compilation samuel.hornus@inria.fr http ://www.loria.fr/ shornus/ocaml/ Modules Un module regroupe un ensemble de définitions
Plus en détailCorrection Code nécessaire à la compilation : let bs ="\\" let nl = "\n" ;; let appliquer = List.map ;; (* affichage d'un noeud *)
Correction Code nécessaire à la compilation : let bs ="\\" let nl = "\n" let appliquer = List.map (* affichage d'un noeud *) let (noeud_vers_ch : int -> string) = function n -> "fib(" ^ (string_of_int
Plus en détailClasses et Objets en Ocaml.
Classes et Objets en Ocaml. Didier Rémy 2001-2002 http://cristal.inria.fr/ remy/mot/2/ http://www.enseignement.polytechnique.fr/profs/informatique/didier.remy/mot/2/ Cours Exercices Slide 1 1. Objets 2.
Plus en détailLes différents types de relation entre les tables
TABLES Les différents types de relation entre les tables La mise en relation de tables permet de relier les données d une table à celles d une autre table et ainsi d établir une base de données de type
Plus en détailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailMachines virtuelles fonctionnelles (suite) Compilation ML Java
Machines virtuelles fonctionnelles (suite) Compilation ML Java Cours de Compilation Avancée (MI190) Benjamin Canou Université Pierre et Maire Curie Année 2011/2012 Semaine 3 Machines virtuelles fonctionnelles
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailPrénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détailConventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
Plus en détailProjet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte
Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes
Plus en détailFormation. Module WEB 4.1. Support de cours
Formation Module WEB 4.1 Support de cours Rédacteur Date de rédaction F.CHEA 08/02/2012 Les informations contenues dans ce document pourront faire l'objet de modifications sans préavis Sauf mention contraire,
Plus en détailGestion des références bibliographiques. Comment simplifier la gestion des références bibliographiques?
Gestion des références bibliographiques Comment simplifier la gestion des références bibliographiques? Objectifs de la formation Créer votre base de données personnelle de références bibliographiques.
Plus en détailComment Définir une Plage de données Pour Utiliser Fonctions de Filtres et de Tris
Comment Définir une Plage de données Pour Utiliser Fonctions de Filtres et de Tris Diffusé par Le Projet Documentation OpenOffice.org Table des matières 1. Définir les plages...3 2. Sélectionner une plage...4
Plus en détailCampagnes d e-mailings v.1.6
Campagnes d e-mailings v.1.6 Sommaire Objet Page I Préparation de la campagne 3 I 1 / Le compte de messagerie pour l envoi des emails 3 I 2 / Configurer le modèle de l email 4 I 3 / La préparation des
Plus en détailSuivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)
Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être
Plus en détailComment Utiliser les Versions, les Modification, les Comparaisons, Dans les Documents
Comment Utiliser les Versions, les Modification, les Comparaisons, Dans les Documents Diffusé par Le Projet Documentation OpenOffice.org Table des Matières 1. Les Versions...3 2. Les Modifications...5
Plus en détailTutoriel: Création d'un Web service en C++ avec WebContentC++Framework
Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Gaël de Chalendar CEA LIST / LIC2M Journée de Présentation des Technologies WebContent INSTN 14/12/2009 Présentation de gsoap Plan
Plus en détailTP3 : Manipulation et implantation de systèmes de fichiers 1
École Normale Supérieure Systèmes et réseaux Année 2012-2013 TP3 : Manipulation et implantation de systèmes de fichiers 1 1 Répertoire de travail courant Le but de l exercice est d écrire une commande
Plus en détailVérification de programmes et de preuves Première partie. décrire des algorithmes
Vérification de programmes et de preuves Première partie. décrire des algorithmes Yves Bertot September 2012 1 Motivating introduction A partir des années 1940, il a été compris que l on pouvait utiliser
Plus en détailAlgorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Plus en détailINSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX
TABLE DES MATIERES Livret Utilisateur Excel 2007 Niveau 2 INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX... 4 Les tableaux croisés dynamiques... 4 Création d un tableau croisé... 5 Comparer des
Plus en détailCours de Programmation 2
Cours de Programmation 2 Programmation à moyenne et large échelle 1. Programmation modulaire 2. Programmation orientée objet 3. Programmation concurrente, distribuée 4. Programmation monadique 5. Les programmes
Plus en détailUtilisation du logiciel ModellingSpace
Utilisation du logiciel ModellingSpace 1. Pour ouvrir le logiciel, cliquer deux fois sur l icône de ModellingSpace se trouvant sur le bureau. N ouvrez pas d autres applications en même temps que ModellingSpace.
Plus en détailUtilisation avancée de SugarCRM Version Professional 6.5
Utilisation avancée de SugarCRM Version Professional 6.5 Document : Utilisation_avancee_SugarCRM_6-5.docx Page : 1 / 32 Sommaire Préambule... 3 I. Les rapports... 4 1. Les principes du générateur de rapports...
Plus en détailInformatique III: Programmation en C++
Informatique III: Programmation en C++ Listes haînées Lundi 9 Janvier 2006 1 2 Introdution Les listes hainées permettent de stoker un nombre d objets qui n a pas besoin d être spéifié a priori. Rajouter
Plus en détail1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
Plus en détailMode d emploi de la boîte vocale. Table des matières
Mode d emploi de la boîte vocale Table des matières 1. Déviation de sa ligne sur sa boîte vocale... 2 2. Suppression de la déviation sur sa boîte vocale... 2 3. Lecture des messages... 3 3.1 Procédure
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailFormation VBA 3 Interagir
Formation VBA 3 Interagir 1 Utilisation des UserForms Les UserForms sont des interfaces largement configurables, il convient de ne pas les limiter à tel ou tel usage qui pourrait être présenté à titre
Plus en détailInitiation à l algorithmique
Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -
Plus en détailAlgorithmique, Structures de données et langage C
UNIVERSITE PAUL SABATIER TOULOUSE III Algorithmique, Structures de données et langage C L3 IUP AISEM/ICM Janvier 2005 J.M. ENJALBERT Chapitre 1 Rappels et compléments de C 1.1 Structures Une structure
Plus en détail1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Plus en détailUtilisation du site de retours Lexibook
1 Utilisation du site de retours Lexibook Se connecter au site 2 Remplir une demande de retour 3 Soumettre une demande de retour 4 Sauvegarder une demande de retour 4 Vérifier la validation d une demande
Plus en détailPrésentation du langage et premières fonctions
1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en
Plus en détailSage 100 CRM - Guide de la Fusion Avancée Version 8. Mise à jour : 2015 version 8
Sage 100 CRM - Guide de la Fusion Avancée Version 8 Mise à jour : 2015 version 8 Composition du progiciel Votre progiciel est composé d un boîtier de rangement comprenant : le cédérom sur lequel est enregistré
Plus en détailFormation tableur niveau 1 (Excel 2013)
Formation tableur niveau 1 (Excel 2013) L objectif général de cette formation est de repérer les différents éléments de la fenêtre Excel, de réaliser et de mettre en forme un tableau simple en utilisant
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailArbres binaires de recherche
1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de
Plus en détailT. A. D. pile. Chapitre 7 (suite) Listes particulières. T. A. D. file. représentation chaînée de la file algorithmique. Files
Chapitre 7 (suite) Listes particulières Pile : liste particulière T. A. D. pile insertion et suppression au sommet de la pile extraction Files queue Listes doublement chaînées insertion file : liste particulière
Plus en détailJava 1.5 : principales nouveautés
Cours 6 - TEP - UPMC - 2008/2009 p. 1/34 Java 1.5 : principales nouveautés classes paramétrées : generics encapsulation des valeurs de types primitifs : auto[un]boxing itération sur les boucles types énumérés
Plus en détailInitiation à la programmation en Python
I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de
Plus en détailLes structures de données. Rajae El Ouazzani
Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l
Plus en détailAlexandre Buge Epitech 5 Promo 2004. Soutenance de stage du 01/03/2004 au 31/08/2004
Alexandre Buge Epitech 5 Promo 2004 Soutenance de stage du 01/03/2004 au 31/08/2004 15 Septembre 2004 Sommaire 1 Introduction : présentation de l entreprise 2 Développement au sein de Skyrecon Les API
Plus en détailImportation automatique de notice d article de Pubmed dans EndNote
Importation automatique de notice d article de Pubmed dans EndNote EndNote est un logiciel de citation bibliographique. Un des grands avantages qu il présente est sans conteste la possibilité d importer
Plus en détailProjet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai.
Projet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai. 1 Introduction On considère une grille de 20 lignes 20 colonnes. Une case de la grille peut être vide, ou contenir une et une
Plus en détailCentre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :
Algorithmique et programmation : STRUCTURES DE DONNÉES A. Structure et enregistrement 1) Définition et rôle des structures de données en programmation 1.1) Définition : En informatique, une structure de
Plus en détailPrésentation du PL/SQL
I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur
Plus en détailwww.imprimermonlivre.com
0 www.imprimermonlivre.com Composition d une couverture avec Word L objectif de ce guide est de vous proposer un mode opératoire pour créer une couverture avec Word. Nous vous rappelons toutefois que Word
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détail6. Hachage. Accès aux données d'une table avec un temps constant Utilisation d'une fonction pour le calcul d'adresses
6. Hachage Accès aux données d'une table avec un temps constant Utilisation d'une fonction pour le calcul d'adresses PLAN Définition Fonctions de Hachage Méthodes de résolution de collisions Estimation
Plus en détailExpression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e
P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement
Plus en détailReprésentation d un entier en base b
Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir
Plus en détailChess Arbiter Pro (version Dames) Notice d utilisation
Chess Arbiter Pro (version Dames) Notice d utilisation Notice traduite et adaptée avec le concours de la Fédération Française de Jeu de Dames (FFJD) Aug2013 version 2.0 1 Tables des matières 1. CARACTERISTIQUES
Plus en détailPerl Orienté Objet BioPerl There is more than one way to do it
Perl Orienté Objet BioPerl There is more than one way to do it Bérénice Batut, berenice.batut@udamail.fr DUT Génie Biologique Option Bioinformatique Année 2014-2015 Perl Orienté Objet - BioPerl Rappels
Plus en détailPlan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml
OCL Object Constraint Language Le langage de contraintes d'uml Plan 1. Introduction 2. Les principaux concepts d'ocl Object Constraint Language 1 Object Constraint Language 2 Exemple: une application bancaire
Plus en détail12 Tableaux croisés dynamiques
12 Le tableau croisé dynamique est l un des meilleurs outils de synthèse que propose Excel. Ne vous laissez pas intimidé par ce nom barbare et surtout, oubliez les inconvénients et les lourdeurs des précédentes
Plus en détailDéploiement de SAS 9.1.3 Foundation
Déploiement de SAS 9.1.3 Foundation I. Installation de SAS sur des postes en local à partir de Cédéroms 3 II. Phase de préparation au déploiement : Création des images disque 6 a) Pour une installation
Plus en détailSOMMAIRE AIDE À LA CRÉATION D UN INDEX SOUS WORD. Service général des publications Université Lumière Lyon 2 Janvier 2007
SOMMAIRE 1) CRÉATION D UN INDEX SIMPLE 3 a) Étape 1 : Marquage des entrées d index (à l aide d un fichier de concordance) 3 Procédure d insertion du tableau 4 Saisie des entrées d index 5 Marquage automatique
Plus en détailM2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013
Rendu Temps Réel - OpenGL 4 et compute shaders December 18, 2013 résumé des épisodes précédents... création des objets opengl, organisation des données, configuration du pipeline, draw,... opengl 4.3 :
Plus en détailUn ordonnanceur stupide
Un ordonnanceur simple Université Paris Sud L objet des exercices qui suivent est de créer un ordonanceur implantant l algorithme du tourniquet ( round-robin scheduler ). La technique utilisée pour élire
Plus en détailTP 1. Prise en main du langage Python
TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer
Plus en détailPublication Assistée par Ordinateur
Présentation OpenOffice Draw est l'outil de dessin vectoriel de la suite bureautique OpenOffice. De fait, Draw permet de réaliser certains documents comparables à ceux de Publisher, le logiciel de P.A.O.
Plus en détailGUIDE D UTILISATION DES SERVICES PACKAGES
GUIDE D UTILISATION DES SERVICES PACKAGES SOMMAIRE 1 Accès au Webmail Orange... 3 2 Contrôle Parental... 3 2.1 Installation du contrôle parental... 3 2.2 Utilisation du contrôle parental... 7 2.2.1 Lancement
Plus en détailContent Switch ou routage de niveau HTTP
ALOHA Load-Balancer - Application Note Document version: v1.1 Last update: 19 juin 2014 EMEA Headquarters 3, rue du petit robinson ZAC des Metz 78350 Jouy-en-Josas France http://www.haproxy.com/ Objectif
Plus en détailUtilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détail1 è r e étape : créer sa base de d o n n é e s
Le publipostage (ou mailing) permet à un document (le document principal créé avec Open Office Writer) de profiter des informations se trouvant dans un autre document (la source de données créée avec Open
Plus en détailModule Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS
Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)
Plus en détailSéminaire d information MIGRATION WINDOWS 7 ET OFFICE 2010
Séminaire d information MIGRATION WINDOWS 7 ET OFFICE 2010 Pourquoi migrer vers Office 2010? Pour bénéficier d une meilleure ergonomie Pour faciliter les échanges avec l extérieur Pour profiter de la puissance
Plus en détailINTRODUCTION AUX TESTS CODES DE L INTERFACE UTILISATEUR
INTRODUCTION AUX TESTS CODES DE L INTERFACE UTILISATEUR 1 Introduction aux tests codés de l interface utilisateur (Coded UI Tests) Sommaire Avertissement...2 Aperçu...3 1. Génération des tests codés depuis
Plus en détailSTAGE IREM 0- Premiers pas en Python
Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer
Plus en détailENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque
1 ENDNOTE X2 SOMMAIRE 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque 2. Manipuler une bibliothèque EndNote 2.1. La saisie
Plus en détailMapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15
MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué
Plus en détailhttp://cermics.enpc.fr/scilab
scilab à l École des Ponts ParisTech http://cermics.enpc.fr/scilab Introduction à Scilab Graphiques, fonctions Scilab, programmation, saisie de données Jean-Philippe Chancelier & Michel De Lara cermics,
Plus en détailDossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10
Dossier Technique Page 1/10 Sommaire : 1. REPONSE TECHNIQUE A LA DEMANDE 3 1.1. Prise en compte de la dernière version de phpcas 3 1.2. Gestion de la connexion à GRR 3 1.2.1. Récupération des attributs
Plus en détailInstructions Installation ELLIS Business: Vidéo Local Windows 2003 & XP poste de Travail
Instructions Installation ELLIS Business: Vidéo Local Windows 2003 & XP poste de Travail AVANT DE DEMARRER?? Vérifier que vos enceintes sont branchées et fonctionnent correctement?? Fermer tous les programmes
Plus en détailEncryptions, compression et partitionnement des données
Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des
Plus en détailPaginer les données côté serveur, mettre en cache côté client
Paginer les données côté serveur, mettre en cache côté client Vous voulez sélectionner des lignes dans une table, mais celle-ci comporte trop de lignes pour qu il soit réaliste de les ramener en une seule
Plus en détailJava Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites
Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)
Plus en détailEXCEL 2007. Les tableaux croisés dynamiques
EXCEL 2007 Les tableaux croisés dynamiques 1 La Fonction VPM... 3 La Valeur Cible... 4 Les Tableaux Croisés Dynamiques (T.C.D.)... 6 2 Fonction VPM Cette fonction d EXCEL permet de calculer le remboursement
Plus en détailRAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)
CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes
Plus en détailNOTICE D UTILISATION
NOTICE D UTILISATION 1 TABLE DES MATIERES Installation de Studio Express Desktop... 3 Installation sur Windows... 3 Installation sur Mac... 3 Connexion à Studio Express Desktop... 3 Appel... 4 Emettre
Plus en détailpyensae StockPrices September 1, 2015 1 Manipulation de séries financières avec la classe StockPrices
pyensae StockPrices September 1, 2015 1 Manipulation de séries financières avec la classe StockPrices La classe StockPrices facilite la récupération de données financières via le site Yahoo Finance ainsi
Plus en détailGénie Logiciel avec Ada. 4 février 2013
Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre
Plus en détailLangage Java. Classe de première SI
Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les
Plus en détailDéfinitions. Numéro à préciser. (Durée : )
Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.
Plus en détailLogiciel PICAXE Programming Editor
Logiciel PICAXE Programming Editor Notice réduite 1. Lancer le logiciel PICAXE Programming Editor (Vidéo : «Lancer le programme»). 2. Dessiner un diagramme (Vidéos : «Nouveau programme» et «Dessiner le
Plus en détailCliquez sur le site que vous souhaitez consulter, il s affichera directement dans le navigateur.
GERER SES FAVORIS AVEC INTERNET EXPLORER Un favori est un marque-page virtuel qui permet de mémoriser l'adresse URL d'une page web. Cette adresse est donc enregistrée par le logiciel de navigation. Un
Plus en détailNote de cours. Introduction à Excel 2007
Note de cours Introduction à Excel 2007 par Armande Pinette Cégep du Vieux Montréal Excel 2007 Page: 2 de 47 Table des matières Comment aller chercher un document sur CVMVirtuel?... 8 Souris... 8 Clavier
Plus en détailLes arbres binaires de recherche
Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s
Plus en détailPremiers Pas en Programmation Objet : les Classes et les Objets
Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.
Plus en détailTD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting
IUT Bordeaux 1 2005-2006 Département Informatique Licence Professionnelle ~ SI TD Objets distribués n 3 : Windows XP et Visual Studio.NET Introduction à.net Remoting Partie 1 : l'analyseur de performances
Plus en détailManuel utilisateur (Manuel_utilisateur_version20110901.pdf) Manuel Reprise des données (Manuel_Reprise_donnees_version20111010.
Manuell d iinstallllatiion Date dernière révision : 10/10/2011 Documents de référence Les documents cités dans le présent document ou utiles à la compréhension de son contenu sont : Titre Manuel utilisateur
Plus en détailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Plus en détailUtilitaires méconnus de StrataFrame
Utilitaires méconnus de StrataFrame Voici quelques classes d utilitaires, parmi ceux qui se trouvent dans le NameSpace MicroFour.StrataFrame.Tools. Cette liste n est pas exhaustive, et les regroupements
Plus en détailRÉALISATION DE GRAPHIQUES AVEC OPENOFFICE.ORG 2.3
RÉALISATION DE GRAPHIQUES AVEC OPENOFFICE.ORG 2.3 Pour construire un graphique : On lance l assistant graphique à l aide du menu Insérer è Diagramme en ayant sélectionné au préalable une cellule vide dans
Plus en détailLes algorithmes de base du graphisme
Les algorithmes de base du graphisme Table des matières 1 Traçage 2 1.1 Segments de droites......................... 2 1.1.1 Algorithmes simples.................... 3 1.1.2 Algorithmes de Bresenham (1965).............
Plus en détail1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert
1 de 46 Algorithmique Trouver et Trier Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 46 Algorithmes et structures de données La plupart des bons algorithmes
Plus en détail