Université Paris Diderot Paris 7. TD n 2. Arbres Binaire de Recherche
|
|
- Christian Pierre-Antoine Beauchemin
- il y a 8 ans
- Total affichages :
Transcription
1 Université Paris Diderot Paris L Informatique Algorithmique Année 00-0, er semestre TD n Arbres Binaire de Recherche Le type de donné arbre" sera utilisé pour indiquer l ensemble de toutes les Arbres Binaires Étiquetés (ABEs) par des clés de type entier. La taille de un ABE a est par déition le nombre de clés contenues dans a. Nous rappelons que un Arbres Binaire de Recherche (ABR) a est un ABE tel que tout nœud interne b de a contient un clé supérieure ou égale à toutes le clés contenues dans le sous-arbre gauche de b ; inférieure strictement à toutes le clés contenues dans le sous-arbre droit de b. Exercice Est-ce que on peut utiliser la procédure suivante pour tester si un ABE a est un ABR? 0 Fonction estabr(a : arbre) : booléen si (estvide(a)) alors retourner vrai; si (estvide(g(a))) alors gauche := clé(a); gauche := clé(g(a)); si (estvide(d(a))) alors droite := clé(a); droite := clé(d(a)); retourner (gauche clé(a) droite estabr(g(a)) estabr(d(a))); Sinon écrivez une fonction qui teste si un ABE a est un ABR. Pour un tableau A[,..., n] la déition de k-ème élément" est très simple à comprendre et l accès au k-ème élément est une opération élémentaire (c est à dire, avec complexité Θ()). Au contraire un arbre binaire n est pas une structure linéaire et nous pouvons deire plusieur notions de k-ème élément", selon la facon dans laquelle nous parcourons l arbre.
2 Étant donné un ABE quelconque on choisit la façon suivante de numéroter les nœuds de l arbre : Fig. Numérotation des nœuds d un ABE Exercice [Accès au k-ème élément] Soit a un ABR. Question. Proposez une méthode pour retourner le k-ème élément de a en utilisant : une procédure VisiteGRD(a : arbre) qui parcourt complètement l arbre a. un tableau d entiers T. Quelle est la complexité de cette méthode en fonction de la taille de a? Question. En supposant d avoir à disposition le type de donnée booléen entier, proposez une fonction RecherchePos(a : arbre, k : entier) : booléen entier telle que si (b, n) = RecherchePos(a, k) alors si la taille de a est inférieure à k alors b = faux et n est la taille de a ; si la taille de a n est pas inférieure à k alors b = vrai et n est la valeur de la k-ème clé. Quelle est la complexité de cette méthode? Question. En supposant qu on dispose d une fonction taille(a : arbre) : entier calculant la taille d un arbre a en Θ(), proposez une fonction RecherchePos(a : arbre, k : entier) : arbre telle que si b = RecherchePos(a, k) alors si taille(a) < n, alors b = ArbreVide() ; si taille(a) n, alors clé(b) est la k-ème clé dans l arbre a. Évaluez la complexité de la procédure en fonction de la hauteur de l arbre a. Question. En acceptant de modifier légèrement la structure des ABRs, pouvez-vous proposer une fonction taille(a : arbre) : entier ayant complexité Θ()? Vérifierez que votre modification ne change pas la complexité des fonctions d insertion et de suppression d un nœud dans un ABR. Exercice [Recherche du successeur] Modifiez légèrment la déition de ABR de telle sorte que toutes les clés soyent distinctes. On appelle strict un ABR qui satisfait cette déition. Soit a un ABR strict. Le successeur de un nœud x (s il existe) est par déition le nœud y ayant la plus petit clé entre le clés plus grand que clé(x). Question. Montrer rigoureusement que dans a : (a) l élément minimum se trouve à un nœud sans fils gauche. (b) si un nœud a un fils droit, son successeur est le minimum de son sous arbre droit. En déduire que si un nœud a un fils droit, alors son successeur n a pas de fils gauche. (c) si un nœud n a pas de fils droit, son successeur, s il existe, est le premier de ses ancètres dont le fils gauche est aussi l un de ses ancètres. Question. Écrire une fonction succ(b : arbre) : arbre qui retourne le sous arbre de a dont la racine est le successeur de b. Quelle est la complexité en temps de cet algorithme?
3 Exercice Soit a un ABR strict, soient x un nœud feuille et y son parent. Montrer que clé(x) est soit la plus petite clé de a supérieure à clé(y), soit la plus grande clé de a inférieure à clé(y). Exercice On peut trier un tableau T de nombres entiers en commençant par construire par insertions successives un ABR contenant ces nombres puis en effectuant un parcours infixe de l arbre. Quels sont les temps d exécution de cet algorithme en fonction de la taille de T dans le pire et dans le meilleur des cas? Exercice [Insertion à la racine] Dans un arbre binaire de recherche, avec la méthode d insertion classique, toutes les nouvelles valeurs sont placées aux feuilles de l arbre. Si l on souhaite accéder à un nœud inséré récemment dans l arbre, il faudra parcourir toute la hauteur de l arbre. Dans certaines applications, on souhaite accéder plus fréquemment aux derniers éléments insérés. Il s agit du principe LRU. Dans ce cas particulier, il peut être intéressant d insérer à la racine. En procédant de la sorte, les valeurs auxquelles on souhaite accéder le plus souvent ont plus de chance d être à une faible profondeur. En considérant l exemple de la figure : Question. Tracez le chemin qui va de la racine au nœud où classiquement il faudrait insérer le nœud. Question. À partir des réponses aux questions précédentes, proposez une procédure insertionracine(a : arbre, k : entier) d insertion à la racine dans un ABR. Évaluer la complexité de cet algorithme dans le pire des cas. Fig. un arbre binaire de recherche pour Least Recently Used!
4 Solutions Solution L algorithme n est pas correct. Par exemple l arbre ( < > ) < > n est pas un ABR. Un bon algorithme est, par exemple : 0 Fonction estabr(a : arbre) : booléen si (estvide(a)) alors retourner vrai; si (estvide(g(a))) alors gauche := clé(a); gauche := max(g(a)); // calcule la clé maximum de l arbre si (estvide(d(a))) alors droite := clé(a) + ; droite := min(d(a)); // calcule la clé minimum de l arbre retourner (gauche clé(a) < droite estabr(g(a)) estabr(d(a))); Solution Réponse. Fonction main(a : arbre, k : entier) : entier i := ; VisiteGRD(a); retourner T [k]; Procédure VisiteGRD(a : arbre) si ( estvide(a)) alors VisiteGRD(G(a)); T [i] := clé(a); i := i + ; VisiteGRD(D(a)); retourner; Cette méthode est en Θ(n). Réponse.
5 0 Fonction RecherchePos(a : arbre, k : entier) : booléen entier si (estvide(a)) alors retourner (faux, 0); (b, n) := RecherchePos(G(a), k); si (b = vrai) alors retourner (vrai, n); si (k = n + ) alors retourner (vrai, clé(a)); (b, n ) := RecherchePos(D(a), k n ); si (b = vrai) alors retourner (vrai, n ); retourner (faux, n + n + ); La complexité de la fonction RecherchePos est Θ(k). Réponse. On remarque qu il est nécessaire de parcourir la branche gauche d un arbre uniquement si k est supérieur au nombre de nœuds du fils-gauche. Une possibilité est donc de calculer préalablement la taille de fils gauche avant de décider si on effectue la recherche à gauche ou à droite. 0 Fonction RecherchePos(a : arbre, k : entier) : arbre taillef G := taille(g(a)); taillef D := taille(d(a)); si (taillef G + taillef D + < k) alors retourner arbrevide(); // la position k n est pas dans l arbre si (taillef G = k ) alors retourner a; // la position k est le noeud courant si (taillef G < k) alors retourner RecherchePos(G(a), k); // la position k est dans le sous-arbre gauche retourner RecherchePos(D(a), k taillef G ); // la position k est dans le sous-arbre droit Le nombre maximum d appel récursif de la fonction RecherchePos étant h, la hauteur de l arbre, on pourrait dire naïvement que la complexité dans le pire cas de cet algorithme est O(h). Ce n est le cas que si la fonction taille est en Θ(). Or, normalement une fonction taille pour les ABR est en Θ(n) (où n est la taille de l arbre). Dans le cas où l on recherche le prémier élément d un arbre de taille n complètement déséquilibré à gauche, la complexité de la fonction RecherchePos est en réalité O(n ). Cela se vérifie par récursion sur la taille de l arbre.
6 Réponse. La seule manière d obtenir une fonction taille en Θ() est de modifier la structure de l arbre pour que chaque nœud stocke sa taille. Pour que cette information sur la taille reste cohérente, il faut modifier les fonction d insertion et de suppression. Ces modifications peuvent être faites sans changer leur complexités respectives. Lors de l insertion il suffit de rajouter sur le chemin du nouveau nœud jusq à la racine à la taille de chaque arbre. On peut aisément voir que lorsqu on ajoute un nœud à un ABR, on augmente la taille de récursivement sur les sous-arbres concernés. Incrémenter O(h) compteurs, se fait en temps constant sur chaque nœud donc la complexité reste O(h). Concernant la suppression, en utilisant la méthode de suppression qui utilise le successeur, il faut décrémenter de la taille de tout les nœuds allant de la racine à l ancienne position du successeur. La nouvelle taille de la racine est l ancienne taille. Décrémenter O(h) compteur, se fait en temps constant sur chaque nœud donc la complexité rest O(h). Solution Un ABR strict a est un ABE tel que tout nœud interne b de a contient un clé supérieure strictement à toutes le clés contenues dans le sous-arbre gauche de b ; inférieure strictement à toutes le clés contenues dans le sous-arbre droit de b. Réponse. (a) Soit un nœud x avec un fils gauche y, on a clé(y) < clé. Donc x ne contient pas la clé minimale. Par contraposée, on en déduit que la clé minimale est située sur un nœud sans fils gauche. (b) Soit un nœud x avec un fils droit. On note d abord que succ(x) existe puisque D(x) a une clé plus grand que clé(x). Puis on montre que succ(x) est dans le sous arbre droit de x. C est clair que succ(x) x et que succ(x) n est pas dans le sous arbre gauche de x. En effet, soit succ(x) un nœud que n a pas pour ancètre x. Alors x et succ(x) ont un premier ancètre commun u x. Si u = succ(x) alors forcement x, D(x) sont dans le sous arbre gauche de succ(x), mais alors clé(x) < clé(d(x)) < clé(succ(x)) : ça est en contradiction avec l hypothèse que succ(x) est le successeur de x dans a. Donc forcement u succ(x) et x est dans le sous arbre gauche de u et succ(x) est dans le sous arbre droit de u. Mais alors clé(x) < clé(u) < clé(succ(x)) : ça est en contradiction avec l hypothèse que succ(x) est le successeur de x dans a. La seule possibilité est alement que succ(x) soit dans le sous arbre droit de x. En plus, si succ(x) a un fils gauche, alors encore une fois on a clé(x) < clé(g(succ(x))) < clé(succ(x)) et ça n est pas possible. (c) On montre d abord que, s il existe, le succ(x) est un ancètre de x. C est claire que succ(x) ne peut pas apparâitre dans un sous arbre de x et succ(x) x. Don on a deux possibilités : succ(x) est un ancètre de x ou succ(x) et x ont un prémier ancètre commun u succ(x). Dans le deuxième cas on aurait que succ(x) est dans le sous arbre droit de u et x est dans le sous arbre gauche de u (l inverse n est pas possible) et donc clé(x) < clé(u) < clé(succ(x)) : ça est en contradiction avec la déition de successeur de x. Fonction min(a : arbre) : arbre si (estvide(g(a))) alors retourner a; retourner min(g(a));
7 0 Fonction succ(a : arbre) : arbre si ( estvide(d(a))) alors retourner min(d(a)); y := père(a); tant que ( estvide(y) x = D(y)) faire x := y; y := père(y); retourner y; On effectue un simple parcours de l arbre à partir du nœud x soit vers le bas, soit vers le haut, donc la complexité en temps est O(h). Si on veut calculer la complexité en fonction du nombre n de clés, dans le meilleur des cas la complexité est O(lg n) et dans le pire des cas O(n). Solution Deux cas sont possibles : Cas : x est le fils droit de y. Comme les clés sont distinctes, on en déduit que clé(y) < clé(x). Considérons un noeud n quelconque différent de x et de y. Sous cas : n est un ancètre de y. Ou bien y est dans le sous arbre droit de n, et alors x l est aussi et on en déduit que clé(n) < clé(y) < clé(x). Ou bien y est dans le sous arbre gauche de n, et alors x l est aussi et on en déduit que clé(y) < clé(x) < clé(n). Sous cas : y est un ancètre de n. Comme x est une feuille et est le fils droit de y, n est dans le sous arbre gauche de y et donc clé(n) < clé(y) < clé(x). Sous cas : n n est pas un ancètre de y et y n est pas un ancètre de n. n et y ont un premier ancètre commun n. Nécessairement, n y et n n donc x et n sont dans les sous-arbres de n. Ses deux sous-arbres sont différents car n est le premier ancètre commun : ou bien y et x sont dans le sous arbre droit de n et n est dans le sous arbre gauche de n, et alors clé(n) < clé(y) < clé(x), ou bien y et x sont dans le sous arbre gauche de n et n est dans le sous arbre droit de n, et alors clé(y) < clé(x) < clé(n). Donc pour tout noeud n différent de x et de y, on a clé(n) < clé(y) < clé(x) ou clé(y) < clé(x) < clé(n), on peut donc conclure que clé(x) est la plus petite clé de l arbre supérieure à clé(y). Cas : x est le fils gauche de y et en menant un raisonnement semblable, on montre que clé(x) est la plus grande clé de l arbre inférieure à clé(y). Solution Remarquons d abord que la complexité du parcours infixe évolue en Θ(n). Pour la construction de l ABR, dans le meilleur des cas, après chaque insertion, l arbre est équilibré donc la complexité de l insertion est O(lg k) où k est le nombre de valeurs déjà insérées. Donc la construction de l ABR évolue en O(Σ n k= lg k). Or Σ n k= lg k = lg(n!) et d après la formule de Stirling n! = ( ) n n πn ( + Θ(n )) e donc lg(n!) = lg(πn) + n lg n n lg(e) + Θ(n ) On en déduit que la complexité du tri dans le meilleur des cas évolue en O(n lg n). Dans le pire des cas, après chaque insertion, l arbre est complètement déséquilibré donc la complexité de l insertion est O(k) où k est le nombre de valeurs insérées. Donc la construction de l ABR évolue en O(Σ n k= k) = O(n ). Dans le pire des cas, la complexité du tri évolue en O(n ).
8 Solution Réponse. 00,, 0, 0,,,. Réponse. Fonction rotationgauche(a : arbre) b := D(a); D(a) := G(b); G(b) := a; retourner b; Fonction rotationdroite(a : arbre) b := G(a); G(a) := D(b); D(b) := a; retourner b; 0 Procédure insertionracine(a : arbre, k : entier) si (estvide(a)) alors a := nouvarbre(k, arbrevide(), arbrevide()); // crée un nouveau arbre avec clé k retourner ; si (k < clé(a)) alors G(a) := insertionracine(g(a), k); a := rotationdroit(a); D(a) := insertionracine(d(a), k); a := rotationgauche(a); retourner ; Dans le pire cas on appel récursivement la fonction insertionracine h fois, où h est la hauteur de a. Le fonctions rotationdroite et rotationgauche ont complexité Θ() et donc la complexité de insertionracine est O(h) (O(lg n)).
ARBRES BINAIRES DE RECHERCHE
ARBRES BINAIRES DE RECHERCHE Table de symboles Recherche : opération fondamentale données : éléments avec clés Type abstrait d une table de symboles (symbol table) ou dictionnaire Objets : ensembles d
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é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é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étailQuelques Algorithmes simples
Quelques Algorithmes simples Irène Guessarian ig@liafa.jussieu.fr 10 janvier 2012 Je remercie Patrick Cegielski de son aide efficace pour la programmation Java ; la section sur le codage de Huffman a été
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étailINF601 : Algorithme et Structure de données
Cours 2 : TDA Arbre Binaire B. Jacob IC2/LIUM 27 février 2010 Plan 1 Introuction 2 Primitives u TDA Arbin 3 Réalisations u TDA Arbin par cellules chaînées par cellules contiguës par curseurs (faux pointeurs)
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étailJade. Projet Intelligence Artificielle «Devine à quoi je pense»
Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges
Plus en détailintroduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives
introduction Chapitre 5 Images récursives http ://univ-tln.fr/~papini/sources/flocon.htm Récursivité http://www.poulain.org/fractales/index.html Image qui se contient elle-même 1 Exemples mathématiques
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étailchapitre 4 Nombres de Catalan
chapitre 4 Nombres de Catalan I Dénitions Dénition 1 La suite de Catalan (C n ) n est la suite dénie par C 0 = 1 et, pour tout n N, C n+1 = C k C n k. Exemple 2 On trouve rapidement C 0 = 1, C 1 = 1, C
Plus en détailAlgorithmique et Programmation
École Supérieure d Ingénieurs de Poitiers Gea Algorithmique et Programmation Laurent Signac ii Algorithmique et programmation Gea Table des matières Avant Propos v Structures de données Notion de pointeur..............................................
Plus en détailSUPPORT DE COURS. Dr. Omari Mohammed Maître de Conférences Classe A Université d Adrar Courriel : omarinmt@gmail.com
Dr. Omari Mohammed Maître de Conférences Classe A Université d Adrar Courriel : omarinmt@gmail.com SUPPORT DE COURS Matière : Algorithmiques et Structures de Données 1 Niveau : 2 ème Année Licence en Informatique
Plus en détailLE PROBLEME DU PLUS COURT CHEMIN
LE PROBLEME DU PLUS COURT CHEMIN Dans cette leçon nous définissons le modèle de plus court chemin, présentons des exemples d'application et proposons un algorithme de résolution dans le cas où les longueurs
Plus en détailArchitecture des Systèmes d Information Architecture des Systèmes d Information
Plan... Tableaux et tris I3 - Algorithmique et programmation 1 Rappels Nicol Delestre 2 Tableaux à n dimensions 3 Initiation aux tris Tableaux - v2.0.1 1 / 27 Tableaux - v2.0.1 2 / 27 Rappels : tableau
Plus en détailProgrammation par contraintes. Laurent Beaudou
Programmation par contraintes Laurent Beaudou On se trouve où? Un problème, une solution : la solution est-elle une solution du problème? simulation, vérification 2 On se trouve où? Un problème, une solution
Plus en détailBases de données documentaires et distribuées Cours NFE04
Bases de données documentaires et distribuées Cours NFE04 Introduction a la recherche d information Auteurs : Raphaël Fournier-S niehotta, Philippe Rigaux, Nicolas Travers prénom.nom@cnam.fr Département
Plus en détailAlgorithmique et structures de données I
Algorithmique et structures de données I Riadh Ben Messaoud Université 7 novembre à Carthage Faculté des Sciences Économiques et de Gestion de Nabeul 1ère année Licence Fondamentale IAG 1ère année Licence
Plus en détail3 Approximation de solutions d équations
3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle
Plus en détailTravaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Plus en détailRappels sur les suites - Algorithme
DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................
Plus en détailProgrammation Objet - Cours II
Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à
Plus en détailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détailL exclusion mutuelle distribuée
L exclusion mutuelle distribuée L algorithme de L Amport L algorithme est basé sur 2 concepts : L estampillage des messages La distribution d une file d attente sur l ensemble des sites du système distribué
Plus en détail1 Recherche en table par balayage
1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément
Plus en détailFeuille TD n 1 Exercices d algorithmique éléments de correction
Master Sciences, Technologies, Santé Mention Mathématiques, spécialité Enseignement des mathématiques Algorithmique et graphes, thèmes du second degré Feuille TD n 1 Exercices d algorithmique éléments
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é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étailLicence Sciences et Technologies Examen janvier 2010
Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.
Plus en détailStructure fonctionnelle d un SGBD
Fichiers et Disques Structure fonctionnelle d un SGBD Requetes Optimiseur de requetes Operateurs relationnels Methodes d acces Gestion de tampon Gestion de disque BD 1 Fichiers et Disques Lecture : Transfert
Plus en détailEXCEL TUTORIEL 2012/2013
EXCEL TUTORIEL 2012/2013 Excel est un tableur, c est-à-dire un logiciel de gestion de tableaux. Il permet de réaliser des calculs avec des valeurs numériques, mais aussi avec des dates et des textes. Ainsi
Plus en détailProbabilités sur un univers fini
[http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur
Plus en détailComplexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation
Complexité Objectifs des calculs de complexité : - pouvoir prévoir le temps d'exécution d'un algorithme - pouvoir comparer deux algorithmes réalisant le même traitement Exemples : - si on lance le calcul
Plus en détailAlgorithme. Table des matières
1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............
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étailChapitre 2 Le problème de l unicité des solutions
Université Joseph Fourier UE MAT 127 Mathématiques année 2011-2012 Chapitre 2 Le problème de l unicité des solutions Ce que nous verrons dans ce chapitre : un exemple d équation différentielle y = f(y)
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étailChapitre 7. Récurrences
Chapitre 7 Récurrences 333 Plan 1. Introduction 2. Applications 3. Classification des récurrences 4. Résolution de récurrences 5. Résumé et comparaisons Lectures conseillées : I MCS, chapitre 20. I Rosen,
Plus en détailCH.6 Propriétés des langages non contextuels
CH.6 Propriétés des langages non contetuels 6.1 Le lemme de pompage 6.2 Les propriétés de fermeture 6.3 Les problèmes de décidabilité 6.4 Les langages non contetuels déterministes utomates ch6 1 6.1 Le
Plus en détailQuelques algorithmes simples dont l analyse n est pas si simple
Quelques algorithmes simples dont l analyse n est pas si simple Michel Habib habib@liafa.jussieu.fr http://www.liafa.jussieu.fr/~habib Algorithmique Avancée M1 Bioinformatique, Octobre 2008 Plan Histoire
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailProbabilités sur un univers fini
[http://mp.cpgedupuydelome.fr] édité le 10 août 2015 Enoncés 1 Proailités sur un univers fini Evènements et langage ensemliste A quelle condition sur (a,, c, d) ]0, 1[ 4 existe-t-il une proailité P sur
Plus en détailET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.
ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de
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étaildonnées en connaissance et en actions?
1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)
Plus en détailChapitre 5 : Flot maximal dans un graphe
Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d
Plus en détailSystemes d'exploitation des ordinateurs
! " #$ % $ &' ( $ plan_ch6_m1 Systemes d'exploitation des ordinateurs Conception de Systèmes de Gestion de la Mémoire Centrale Objectifs 1. Conception de systèmes paginés 2. Conception des systèmes segmentés
Plus en détailPlus courts chemins, programmation dynamique
1 Plus courts chemins, programmation dynamique 1. Plus courts chemins à partir d un sommet 2. Plus courts chemins entre tous les sommets 3. Semi-anneau 4. Programmation dynamique 5. Applications à la bio-informatique
Plus en détailSouad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/
Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation
Plus en détailNouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires
Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Julien Jorge julien.jorge@univ-nantes.fr Laboratoire d Informatique de Nantes Atlantique,
Plus en détailIntroduction à la théorie des graphes. Solutions des exercices
CAHIERS DE LA CRM Introduction à la théorie des graphes Solutions des exercices Didier Müller CAHIER N O 6 COMMISSION ROMANDE DE MATHÉMATIQUE 1 Graphes non orientés Exercice 1 On obtient le graphe biparti
Plus en détailLimites finies en un point
8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,
Plus en détailMIS 102 Initiation à l Informatique
MIS 102 Initiation à l Informatique Responsables et cours : Cyril Gavoille Catherine Pannier Matthias Robine Marc Zeitoun Planning : 6 séances de cours 5 séances de TD (2h40) 4 séances de TP (2h40) + environ
Plus en détailHEITZ X Pro GESTION CLIENTÈLE
Manuel d'utilisation HEITZ X Pro GESTION CLIENTÈLE Notice en Français C.B.F.T. s.a. - BP 03-84370 BEDARRIDES Tél. 04.90.33.07.62 - Fax 04.90.33.22.93 - Web : http://www.heitzsystem.com Assistance : 04.90.33.27.80
Plus en détailASR1 TD7 : Un microprocesseur RISC 16 bits
{Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit
Plus en détailNOEUD HERRINGBONE-PINEAPPLE STANDARD TYPE and PASS
CopyrightCharles HAMEL aka Nautile 2012 Oct16th page 1 on 10 NOEUD HERRINGBONE-PINEAPPLE STANDARD TYPE and PASS Le sujet PASS a été traité ailleurs par moi alors consultez les pdf et les pages appropriées
Plus en détailImage d un intervalle par une fonction continue
DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction
Plus en détailL ARBORESCENCE. Qu est-ce qu un dossier? L arborescence?
L ARBORESCENCE Qu est-ce qu un dossier? Un dossier est une pochette vide dans laquelle on peut disposer des documents créés à l aide de l outil informatique. Comme les systèmes utilisés dans la vie courante
Plus en détailThéorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France
Théorie et Codage de l Information (IF01) exercices 2013-2014 Paul Honeine Université de technologie de Troyes France TD-1 Rappels de calculs de probabilités Exercice 1. On dispose d un jeu de 52 cartes
Plus en détail4. Les structures de données statiques
4. Les structures de données statiques 4.1 Tableaux à une dimension 4.1.1 Introduction Imaginons que dans un programme, nous ayons besoin simultanément de 25 valeurs (par exemple, des notes pour calculer
Plus en détailContinuité en un point
DOCUMENT 4 Continuité en un point En général, D f désigne l ensemble de définition de la fonction f et on supposera toujours que cet ensemble est inclus dans R. Toutes les fonctions considérées sont à
Plus en détailArchitecture des ordinateurs TD1 - Portes logiques et premiers circuits
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice
Plus en détailExercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,
Plus en détailChapitre 1 : Évolution COURS
Chapitre 1 : Évolution COURS OBJECTIFS DU CHAPITRE Savoir déterminer le taux d évolution, le coefficient multiplicateur et l indice en base d une évolution. Connaître les liens entre ces notions et savoir
Plus en détailDonner les limites de validité de la relation obtenue.
olutions! ours! - Multiplicateur 0 e s alculer en fonction de. Donner les limites de validité de la relation obtenue. Quelle est la valeur supérieure de? Quel est le rôle de 0? - Multiplicateur e 0 s alculer
Plus en détailV- Manipulations de nombres en binaire
1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,
Plus en détailBACCALAURÉAT GÉNÉRAL SESSION 2012 OBLIGATOIRE MATHÉMATIQUES. Série S. Durée de l épreuve : 4 heures Coefficient : 7 ENSEIGNEMENT OBLIGATOIRE
BACCALAURÉAT GÉNÉRAL SESSION 2012 MATHÉMATIQUES Série S Durée de l épreuve : 4 heures Coefficient : 7 ENSEIGNEMENT OBLIGATOIRE Les calculatrices électroniques de poche sont autorisées, conformément à la
Plus en détailInitiation à Excel. Frédéric Gava (MCF) gava@univ-paris12.fr
Initiation à Excel Frédéric Gava (MCF) gava@univ-paris12.fr LACL, bâtiment P2 du CMC, bureau 221 Université de Paris XII Val-de-Marne 61 avenue du Général de Gaulle 94010 Créteil cedex Plan de cette année
Plus en détailProbabilités conditionnelles Loi binomiale
Exercices 23 juillet 2014 Probabilités conditionnelles Loi binomiale Équiprobabilité et variable aléatoire Exercice 1 Une urne contient 5 boules indiscernables, 3 rouges et 2 vertes. On tire au hasard
Plus en détailStyler un document sous OpenOffice 4.0
Mars 2014 Styler un document sous OpenOffice 4.0 Un style est un ensemble de caractéristiques de mise en forme (police, taille, espacement, etc.) qui sert à structurer un document en l organisant de manière
Plus en détailUniversité de Strasbourg UFR de Mathématique et d'informatique. L2 Informatique Semestres S3 et S4. Structures de Données et Algorithmes 1 et 2
Université de Strasbourg UFR de Mathématique et d'informatique L2 Informatique Semestres S3 et S4 Structures de Données et Algorithmes 1 et 2 Fiches d exercices année 2009 2010 1 2 Constructions de base
Plus en détailIV- Comment fonctionne un ordinateur?
1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions
Plus en détailEnsimag 1ère année Algorithmique 1 Examen 2ième session 24 juin 2010. Algorithmique 1
Algorithmique 1 Durée : 2h Machines électroniques interdites Tous documents papiers autorisés Il est conseillé de traiter les deux parties dans l ordre du sujet. Veuillez respecter les notations introduites
Plus en détailReprésentation des Nombres
Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...
Plus en détailProbabilités Loi binomiale Exercices corrigés
Probabilités Loi binomiale Exercices corrigés Sont abordés dans cette fiche : (cliquez sur l exercice pour un accès direct) Exercice 1 : épreuve de Bernoulli Exercice 2 : loi de Bernoulli de paramètre
Plus en détailTraitement des données avec Microsoft EXCEL 2010
Traitement des données avec Microsoft EXCEL 2010 Vincent Jalby Septembre 2012 1 Saisie des données Les données collectées sont saisies dans une feuille Excel. Chaque ligne correspond à une observation
Plus en détailTP 2 Réseaux. Adresses IP, routage et sous-réseaux
TP 2 Réseaux Adresses IP, routage et sous-réseaux C. Pain-Barre INFO - IUT Aix-en-Provence version du 24/2/2 Adressage IP. Limites du nombre d adresses IP.. Adresses de réseaux valides Les adresses IP
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étailLicence MASS 2000-2001. (Re-)Mise à niveau en Probabilités. Feuilles de 1 à 7
Feuilles de 1 à 7 Ces feuilles avec 25 exercices et quelques rappels historiques furent distribuées à des étudiants de troisième année, dans le cadre d un cours intensif sur deux semaines, en début d année,
Plus en détailCompression de Données - Algorithme de Huffman Document de Conception
ROLLET Samuel SALLE Jennifer Compression de Données - Algorithme de Huffman Document de Conception Projet d'algorithmique et Structure des Données 1 SOMMAIRE 1. Domaine d application....4 1.1 Objectifs
Plus en détailRaisonnement probabiliste
Plan Raisonnement probabiliste IFT-17587 Concepts avancés pour systèmes intelligents Luc Lamontagne Réseaux bayésiens Inférence dans les réseaux bayésiens Inférence exacte Inférence approximative 1 2 Contexte
Plus en détailCours de Master Recherche
Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction
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étail* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours
Exo7 Continuité (étude globale). Diverses fonctions Exercices de Jean-Louis Rouget. Retrouver aussi cette fiche sur www.maths-france.fr * très facile ** facile *** difficulté moyenne **** difficile *****
Plus en détailCours d Analyse. Fonctions de plusieurs variables
Cours d Analyse Fonctions de plusieurs variables Licence 1ère année 2007/2008 Nicolas Prioux Université de Marne-la-Vallée Table des matières 1 Notions de géométrie dans l espace et fonctions à deux variables........
Plus en détailAlgorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/??
Algorithmique I Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement
Plus en détailLes indices à surplus constant
Les indices à surplus constant Une tentative de généralisation des indices à utilité constante On cherche ici en s inspirant des indices à utilité constante à définir un indice de prix de référence adapté
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étailDe même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que
Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer
Plus en détailÉquations non linéaires
Équations non linéaires Objectif : trouver les zéros de fonctions (ou systèmes) non linéaires, c-à-d les valeurs α R telles que f(α) = 0. y f(x) α 1 α 2 α 3 x Equations non lineaires p. 1/49 Exemples et
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
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étailLibreOffice Calc : introduction aux tableaux croisés dynamiques
Fiche logiciel LibreOffice Calc 3.x Tableur Niveau LibreOffice Calc : introduction aux tableaux croisés dynamiques Un tableau croisé dynamique (appelé Pilote de données dans LibreOffice) est un tableau
Plus en détailALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII
ALGORITHMIQUE II NOTION DE COMPLEXITE 1 2 Comment choisir entre différents algorithmes pour résoudre un même problème? Plusieurs critères de choix : Exactitude Simplicité Efficacité (but de ce chapitre)
Plus en détailCours 1 : Introduction Ordinateurs - Langages de haut niveau - Application
Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un
Plus en détailÉPREUVE COMMUNE DE TIPE 2008 - Partie D
ÉPREUVE COMMUNE DE TIPE 2008 - Partie D TITRE : Les Fonctions de Hachage Temps de préparation :.. 2 h 15 minutes Temps de présentation devant le jury :.10 minutes Entretien avec le jury :..10 minutes GUIDE
Plus en détailUtilisation des tableaux sémantiques dans les logiques de description
Utilisation des tableaux sémantiques dans les logiques de description IFT6281 Web Sémantique Jacques Bergeron Département d informatique et de recherche opérationnelle Université de Montréal bergerja@iro.umontreal.ca
Plus en détailLa Clé informatique. Formation Excel XP Aide-mémoire
La Clé informatique Formation Excel XP Aide-mémoire Septembre 2005 Table des matières Qu est-ce que le logiciel Microsoft Excel?... 3 Classeur... 4 Cellule... 5 Barre d outil dans Excel...6 Fonctions habituelles
Plus en détailCOUR D APPEL DE LYON PROCEDURE INFORMATIQUE IMPRIMANTES. Imprimantes SAR de Lyon / Novembre 2007 Page 1 sur 14
COUR D APPEL DE LYON PROCEDURE INFORMATIQUE IMPRIMANTES SAR de Lyon / Novembre 2007 Page 1 sur 14 SOMMAIRE SOMMAIRE... 2 GENERALITES... 3 INSTALLATION D UNE IMPRIMANTE... 4 Imprimante USB... 4 Détection
Plus en détail