Algorithmique P2. Optimisation d'un algorithme de tri , Ulg R.Dumont

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimension: px
Commencer à balayer dès la page:

Download "Algorithmique P2. Optimisation d'un algorithme de tri 2009-2010, Ulg R.Dumont"

Transcription

1 Algorithmique P2 Optimisation d'un algorithme de tri , Ulg R.Dumont

2 Sources supplémentaires Cours Algorithms and Data Structures in Java, Patrick Prosser, 2000, Glasgow University Algorithmique du tri, C.Jard, 2006, Département Informatique et Télécommunications, ENS Cachan Articles QuickSort, A Historical Perspective and Empirical Study, Laila Khreisat, Fairleigh Dickinson University, 2007 Autres QuickSort is Optimal, Sedgewick & Bentley

3 Diviser pour régner : Quicksort Diviser : Le tableau A[p.. r] est partitionné en deux soustableaux (éventuellement vides) A[p..q 1] et A[q+1..r] tels que chaque élément de A[p..q 1] soit inférieur ou égal à A[q] qui, lui-même, est inférieur ou égal à chaque élément de A[q+1..r]. L indice q est calculé dans le cadre de cette procédure de partitionnement Problème central Régner : Les deux sous-tableaux A[p..q 1] et A[q+1..r] sont triés par des appels récursifs au tri rapide. Combiner : Suite aux appels récursifs sur les sous-tableaux, aucun travail n est nécessaire pour les recombiner : le tableau A[p..r] est maintenant trié.

4 Quicksort

5 Quicksort Initialement, Le premier segment est vide Le deuxième segment également Le segment "non traité" s'étend de l'élément p à l'élément r-1 Le pivot est à l'indice r Chaque itération de la boucle réduit le segment non traité d'un élément Finalement, Le segment non traité est vide Les deux autres segments contiennent 0 ou plusieurs éléments.

6 Quicksort

7 Quicksort - Python

8 Choix du pivot Prendre le premier élément du tableau (ou le dernier ) Si les éléments ne sont pas déjà partiellement triés ou en ordre inverse Ok Sinon Considérons le cas d'une liste déjà triée (ou inversement triée) Quelle est la taille des sous-listes L et R? Tous les éléments vont dans A[p..q-1] ou A[q+1..r] Le pivot étant constamment choisi à cette position, le problème se répercute récursivement. Dans ces cas particuliers, le quicksort est dit "dégénéré" Complexité O(n 2 )

9 Quicksort : Complexité Soit l'arbre de partition du Quicksort À partir de P.Prosser (voir sources sup.)

10 Quicksort : Complexité v1 Soit s i (n), la taille totale des entrées au niveau i de l'arbre T On a s 0 (n) = n s 1 (n) = n-1 (on ne traite plus le pivot) s 2 (n) = n-3 (on ne traite plus les pivots) ou n-2 (si une partition est vide) Pire cas n 1 n 1 n i ( ) ( ) i= 0 i= 0 i= 1 2 ( ) O s n = O n i = O i = O n À partir de P.Prosser (voir sources sup.)

11 Quicksort : Complexité v1 Meilleur des cas = partitions de taille égale : s 0 (n) = n s 1 (n) = n-1 s 2 (n) = n-3 = n-(1+2) s 3 (n) = n-7 = n-(1+2+4)=n-( ) s i (n) = n-( i-1 )=n-(2 i -1)=n-2 i +1 i s ( n) = n + n 1+ n n Il vient i Or, au max, i=log n (puisque prop. à la hauteur de T) Donc, i si ( n) = ( i + 1) n ( ) + 1 Ou encore s ( n) = log n. n + n ( n) + 1 O( nlog n) i

12 Quicksort : Complexité v2 Plus formellement, la complexité de Partition est O(n), à une constante près notée α Le pivot sépare le tableau en deux parties (k) éléments et (n-k) éléments Travaillons sur la relation suivante T(n) = T(k) + T(n-k)+ αn

13 Quicksort : Complexité v2 Cas défavorable : Dans ce cas, on a k=1 et n-k=n-1 (une des soustableaux est vide) pivot le + petit ou le + grand Il vient successivement T(n) = T(1)+T(n-1)+αn = T(n-1)+T(1)+αn = [T(n-2)+T(1)+α(n-1)]+T(1)+αn = T(n-2)+2.T(1)+α(n-1+n) = [T(n-3)+T(1)+α(n-2)]+2.T(1)+α(n-1+n) = T(n-3)+3.T(1)+α(n-2+n-1+n) [= T(n-i)+i.T(1)+α(n-i+1+ +n-2+n-1+n) i 1 = T(n-i)+i.T(1)+α. ( n j) ] n 2 j= 0 = T(1)+(n-1)T(1)+α. ( n j) j= 0 = nt(1)+α(n(n-2)-(n-2)(n-1)/2) O(n²) O(n²)

14 Quicksort : Complexité v2 Cas favorable : Dans ce cas, on a k=n/2 et n-k=n/2 Il vient successivement T(n) = 2T(n/2)+αn = 2(2T(n/4)+α(n/2))+αn = 4T(n/4)+2α(n/2)+αn = 2²T(n/4)+2αn = 2²(2T(n/8)+α(n/4))+2αn = 2³T(n/8)+3αn [= 2 k T(n/2 k )+kαn] = nt(1)+αnlogn O(n O(n logn)

15 Optimisations possibles Choix du pivot Pivot aléatoire, central, median-of-three Autre algorithme de tri pour les petites listes Insertion Sort Optimisations avancées Différentes manières de partitionner les sous-listes (Dutch flag) Améliorations plus 'techniques' (Qsorte, Bsort, )

16 Optimisations possibles Afin de simplifier la présentation des améliorations, adoptons une nouvelle approche Le choix du pivot est inclus en tant que paramètre Le parcours s'effectue à partir des deux extrémités

17 Optimisations possibles Problème : Tableau en partie trié (pire des cas = tableau entièrement trié) Cas relativement fréquent Résulte du choix du pivot Solutions pour le pivot : 1. Pivot aléatoire Solution classique 2. Pivot en milieu de tableau

18 Pivot en tant qu'élément central i j i j i j j i

19 Optimisations possibles La solution idéale aurait été un pivot médian Obtention de deux sous-tableaux de tailles proches [N/2] et [N/2]-1 Problème : détermination coûteuse en temps 3. Calcul de la médiane (T[p], T[r] et T[ (p+r)/2 ]) Median-of-three partitioning: a. Calcul de la médiane à partir des valeurs de 3 éléments choisis aléatoirement, ou b. Calcul basé sur le premier élément, le central et le dernier, ou c. Choix sur 3 groupes de 3 éléments 3 médianes 1 médiane Peut dépendre du nombre d'éléments à trier. Exemple : < 7 : a. 7<=x<=40 : b. > 40 : c.

20 Pivot médian x y z x z y x<=z y>=z Choix des éléments choix du pivot Exemple x m z y placement du pivot sélection des 3 éléments déplacement des éléments échange du pivot sélectionné i j

21 QS : 3-way way, aperçu 'Multikey QuickSort', 'Qsort7' Implémentation du problème du drapeau hollandais (Dutch Flag) de Dijkstra par Benteley et McIlroy Optimisation pour le tri de chaines de caractères Choisir un élément comme pivot Considérer le premier caractère de la string pivot Partitionner en 3 sous-tableaux Le premier contient celles dont le caractère correspondant est inférieur Le second, contient les égaux Le troisième, les supérieurs Tri récursif sur les tableaux 1 et 3 Tri récursif sur le tableau 2, sur le second caractère du pivot

22 QS : 3-way way, aperçu a (d) pointe le premier (dernier) élément inférieur (supérieur) à l'élément pivot b (c) pointe le premier (dernier) élément à traiter b et c sont échangés quand nécessaire Au final, on rassemble les extrémités au centre du tableau Voir L. Khreisat, Sources Suppl.

23 Du tri rapide au tri par insertion Lorsque le tableau contient peu d'éléments (moins de 15), il est conseillé de passer au tri par insertion. Tri itératif Efficace en temps Plus efficace en espace mémoire en raison de l'absence de récursion sur les sous-listes

24 Tri par insertion

25 Complexité du tri par insertion Source basée sur C.Jard, voir s. supp.

26 Tri par insertion cas favorable et défavorable Cas favorable : tableau déjà trié. Fonction linéaire Cas défavorable : tableau trié par ordre décroissant Car et Fonction quadratique

27 Tri par insertion Cas moyen Cas le plus favorable = borne inférieure Cas le plus défavorable = borne supérieure Cas général = entre les deux On fait parfois des analyses de "cas moyen" : Tableau d'entrée = n nombres tirés au hasard (on suppose une loi uniforme). Pour une clé choisie ligne 2 en moyenne la moitié du tableau lui est supérieure et l'autre moitié lui est inférieure.

28 Tri par insertion Cas moyen Donc Il vient Fonction quadratique

29 Tri par insertion complexité simp. Op. fondamentale = comp. de deux éléments

30 Tri par insertion complexité simp.

31 Algorithmique P2 Techniques de preuves , Ulg R.Dumont

32 Preuve par (contre-)exemple Par l'exemple Proposition Il existe des nombres égaux au produit de la somme et du produit de leurs chiffres Preuve 135 = 9*15 Par contre-exemple Proposition Tout nombre 2 i 1 est premier Preuve 2 4-1=15=5*3

33 Preuve par contrapositive Proposition Soient a et b entiers. Si ab est pair, alors a est pair ou b est pair. Preuve Si a et b sont impairs, alors ab est impair. Supposons a = 2i + 1 et b = 2j + 1. Alors, ab = 4ij + 2i + 2j + 1 = 2(2i j + i + j) + 1 Par conséquent, ab est impair.

34 Preuve par contradiction Par contradiction Proposition Soient a et b entiers. Si ab est impair, alors a est impair et b est impair. Preuve Soit ab impair. Supposons que a est pair. Alors, a = 2i. Par conséquent, ab = 2ib. Donc ab est pair, ce qui constitue une contradiction. En conséquence, a est impair et b est impair.

35 Preuve par récurrence Proposition F(n) < 2 n où F est la fonction Fibonacci définie par F(0) = 0, F(1) = 1 et F(n) = F(n 2) + F(n 1). Preuve Initialisation F(0) <2 0, F(1)<2 1. Hérédité Supposons la relation vérifiée pour F(n-2) et F(n-1) Alors F(n)=F(n-2)+F(n-1)<2 n-2 +2 n-1 <2.2 n-1 =2 n

36 Preuve par récurrence Proposition n! 2 n 1 n Preuve Vrai pour n =0 et n =1 Par ailleurs (n +1)!=(n +1)n! (n +1)2 n n 1 =2 n

37 Algorithmique P2 Type de données abstrait , Ulg R.Dumont

38 TDA Type de Données Abstrait ADT Abstract Data Type TDA = Description d'une structure de données et des opérations de manipulation (accès, modification, suppression, ) de cette structure. Il comprend Une partie interface Description de la structure et des opérations possibles Opérations élémentaires (= primitives) Opérations possibles, basées sur ces primitives Les éventuels arguments et retours de ces opérations Une partie implémentation Description explicite

39 TAD La définition d'un TAD repose sur Des structures de données simples Les algorithmes permettant de les implémenter Éventuellement d'autres TAD Il ne dépend pas d'un langage particulier Il permet d'utiliser une structure de données sans pour autant y accéder directement Un TAD est un ensemble limité d'opérations

40 TAD - Exemples Pile push(e : element, p: pile) Place l'élément e au sommet de la pile p pop(p : pile) Supprime l'élément au sommet de la pile taille(p : pile) : entier Retourne la taille de la pile estvide(p : pile) : booleen Teste si la pile p est vide top(p : pile) : value Retourne la valeur de l'élément au sommet de la pile

41 TAD - Exemples File push(e : element, f: file) Place l'élément e en queue de la file f pop(f : file) Supprime l'élément en tête de la file taille(f : file) : entier Retourne la taille de la file estvide(f : file) : booleen Teste si la file f est vide top(f : file) : value Retourne la valeur de l'élément en tête de file

42 TAD Exemples Arbre binaire EstVide(A : arbre) : booleen Teste si l'arbre A est vide Racine(A : arbre) : value Retourne la valeur de l'élément racine de A Gauche(A : arbre) : tree Retourne le sous-arbre à gauche de A Droite(A) : tree Retourne le sous-arbre à droite de A Construire(x,B,C) Construit l'arbre de racine x, ss-arbres gauche B et droit C

IN 101 - Cours 05. 7 octobre 2011. Un problème concret Recherche de collisions

IN 101 - Cours 05. 7 octobre 2011. Un problème concret Recherche de collisions Un problème concret Recherche de collisions IN 101 - Cours 05 7 octobre 2011 Le paradoxe des anniversaires dit que 365 élèves sont suffisants (en moyenne) pour avoir une collision d anniversaire, deux

Plus en détail

Algorithmes de tris. Chapitre 4

Algorithmes de tris. Chapitre 4 Chapitre 4 Algorithmes de tris Trier un ensemble d objets consiste à ordonner ces objets en fonction de clés et d une relation d ordre définie sur cette clé. Par exemple, chaque étudiant inscrit à l université

Plus en détail

Arithmétique Algorithmique. http://www.math.univ-lyon1.fr/~roblot/ens.html

Arithmétique Algorithmique. http://www.math.univ-lyon1.fr/~roblot/ens.html Arithmétique Algorithmique http://www.math.univ-lyon1.fr/~roblot/ens.html Partie III Algorithmes classiques 1 Coût de la multiplication et de la division 2 Exponentiation rapide 3 Algorithme d Euclide

Plus en détail

Terminologie informatique. Fonctions AXIOMES. Spécification algébrique

Terminologie informatique. Fonctions AXIOMES. Spécification algébrique Fonctions Une fonction partielle F d un ensemble A de départ ou domaine (domain en anglais) dans un ensemble d arrivée B ou co-domaine (range en anglais) associe à chaque élément a de A au plus un élément

Plus en détail

Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas

Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas 1. Arbres ordonnés 1.1. Arbres ordonnés (Arbres O) On considère des arbres dont les nœuds sont étiquetés sur un ensemble muni d'un

Plus en détail

SUJET + CORRIGE. Avertissement

SUJET + CORRIGE. Avertissement Année : 2012/2013 Semestre 2 DEVUIP Service scolarité PARCOURS : Licence LIMI201 & LIMI211 UE J1MI2013 : Algorithmes et Programmes Épreuve : Devoir Surveillé Terminal Date : Lundi 10 juin 2013 Heure :

Plus en détail

Tri en Python. # on cherche k tel que a k = min(a j ) ji

Tri en Python. # on cherche k tel que a k = min(a j ) ji Tri en Python On considère ici des tableaux ou listes d entiers ou de ottants. En Python, on peut trier une liste à l aide de la méthode sort : si a est une liste d entiers ou de ottants, a.sort() modi

Plus en détail

Analyse de la complexité algorithmique (1)

Analyse de la complexité algorithmique (1) Analyse de la complexité algorithmique (1) L analyse de la complexité telle que nous l avons vue jusqu à présent nous a essentiellement servi à déterminer si un problème est ou non facile (i.e. soluble

Plus en détail

1 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 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

Algorithmique et Structures de Données

Algorithmique et Structures de Données 1.1 Algorithmique et Structures de Données Jean-Charles Régin Licence Informatique 2ème année 1.2 Itérations Jean-Charles Régin Licence Informatique 2ème année Itération : définition 3 En informatique,

Plus en détail

ALGORITHMIQUE II. Récurrence et Récursivité. SMI AlgoII

ALGORITHMIQUE II. Récurrence et Récursivité. SMI AlgoII ALGORITHMIQUE II Récurrence et Récursivité Récurrence Suite récurrente: la déition d une suite est la donnée d un terme général déi en fonction du (ou des) terme(s) précédant(s) D un terme initial qui

Plus en détail

Les Tables de Hachage

Les Tables de Hachage NICOD JEAN-MARC Licence 3 Informatique Université de Franche-Comté UFR des Sciences et Techniques septembre 2007 NICOD JEAN-MARC 1 / 34 Référence Tables à adressage directe Thomas H. Cormen, Charles E.

Plus en détail

Cours 1: Introduction à l algorithmique

Cours 1: Introduction à l algorithmique 1 Cours 1: Introduction à l algorithmique Olivier Bournez bournez@lix.polytechnique.fr LIX, Ecole Polytechnique 2011-12 Algorithmique 2 Aujourd hui Calcul de x n Maximum Complexité d un problème Problème

Plus en détail

Généralités sur les fonctions numériques

Généralités sur les fonctions numériques 7 Généralités sur les fonctions numériques Une fonction numérique est, de manière générale, une fonction d une variable réelle et à valeurs réelles. 7.1 Notions de base sur les fonctions Si I, J sont deux

Plus en détail

Présentation du programme d informatique

Présentation du programme d informatique Présentation du programme d informatique UPS 31 mai 2015 Table des matières 1 Introduction 2 1.1 Présentation.................................. 2 1.2 Représentation des nombres.........................

Plus en détail

MÉRÉ Aurélien FIIFO1. Pathfinder

MÉRÉ Aurélien FIIFO1. Pathfinder MÉRÉ Aurélien FIIFO1 AMC Pathfinder 1 Sommaire Préambule... 3 Modélisation de l espace... 4 Modélisation des cases δ, α... 4 Interface en mode texte... 5 Modélisation du robot... 8 1 ) Le type Robot...

Plus en détail

Au menu. Cours 7: Classes Probabilistes. Application : Calcul de la médiane. Sous menu. Retours sur quelques algorithmes.

Au menu. Cours 7: Classes Probabilistes. Application : Calcul de la médiane. Sous menu. Retours sur quelques algorithmes. Au menu Cours 7: Classes Probabilistes Olivier Bournez bournez@lix.polytechnique.fr LIX, Ecole Polytechnique Retours sur quelques algorithmes Quelques résultats INF561 Algorithmes et Complexité 1 2 Sous

Plus en détail

Licence informatique - L3 Année 2012/2013. Conception d algorithmes et applications (LI325) COURS 2

Licence informatique - L3 Année 2012/2013. Conception d algorithmes et applications (LI325) COURS 2 Licence informatique - L Année 0/0 Conception d algorithmes et applications (LI) COURS Résumé. Cette deuxième séance est entièrement consacrée aux applications du principe Diviser pour Régner. Nous regarderons

Plus en détail

Algorithmique et Analyse d Algorithmes

Algorithmique et Analyse d Algorithmes Algorithmique et Analyse d Algorithmes L3 Info Cours 5 : Structures de données linéaires Benjamin Wack 2015-2016 1 / 37 La dernière fois Logique de Hoare Dichotomie Aujourd hui Type Abstrait de Données

Plus en détail

Algorithmique P2. HeapSort et files de priorité Ulg, 2009-2010 Renaud Dumont

Algorithmique P2. HeapSort et files de priorité Ulg, 2009-2010 Renaud Dumont Algorithmique P2 HeapSort et files de priorité Ulg, 2009-2010 Renaud Dumont Structure de tas - arbre Un tas est une structure de données qui Permet un nouveau type de tri (Tri par tas) Permet l'implémentation

Plus en détail

Introduction Tableaux / Vecteurs Listes chaînées Un principe général Quelques algorithmes de tri À faire pour lundi prochain. Tableaux VS Listes

Introduction Tableaux / Vecteurs Listes chaînées Un principe général Quelques algorithmes de tri À faire pour lundi prochain. Tableaux VS Listes Tableaux VS Listes Tableaux VS Listes Petit chapitre. Plan Introduction Tableaux / Vecteurs Définition abstraite Qu a-t-on fait avec des vecteurs? Que peut-on faire avec des vecteurs? Listes chaînées Définition

Plus en détail

Université Paris Diderot Paris 7. TD n 2. Arbres Binaire de Recherche

Université Paris Diderot Paris 7. TD n 2. Arbres Binaire de Recherche 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

Plus en détail

TD 5 : Les piles. PC* - Lycée Thiers 2015/2016

TD 5 : Les piles. PC* - Lycée Thiers 2015/2016 2015/2016 Exercice 1 : Pile renversée Corrigé Consignes Pour tous les exercices de cette planche on aura préalablement écrit l implémentation des piles à capacité limitée ou illimitée vue en cours, et

Plus en détail

ARBRES BINAIRES DE RECHERCHE

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étail

Les arbres Florent Hivert

Les arbres Florent Hivert 1 de 1 Algorithmique Les arbres Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 1 Algorithmes et structures de données La plupart des bons algorithmes fonctionnent

Plus en détail

Algorithmique avancée et programmation C Exercices de TD 3.0.1 avec solutions. N. Delestre

Algorithmique avancée et programmation C Exercices de TD 3.0.1 avec solutions. N. Delestre Algorithmique avancée et programmation C Exercices de TD 3.0.1 avec solutions N. Delestre 2 Table des matières 1 Rappels : chaîne de caractères, itérations, conditionnelles 5 1.1 estunprefixe............................................

Plus en détail

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3 I Arbres binaires 2014-2015 Table des matières 1 Rappels 2 1.1 Définition................................................ 2 1.2 Dénombrements............................................ 2 1.3 Parcours.................................................

Plus en détail

Partie 3. Gilles Lebrun (gilles.lebrun@unicaen.fr)

Partie 3. Gilles Lebrun (gilles.lebrun@unicaen.fr) Partie 3 Gilles Lebrun (gilles.lebrun@unicaen.fr) Les arbres binaires Définition : C est une structure arborescente ou hiérarchique ou récursive Chaque élément (nœud) constituant la structure de l arbre

Plus en détail

Chapitre 1. Programmation en Python 2ème année. 23 septembre 2014. E-mail mlahby@gmail.com

Chapitre 1. Programmation en Python 2ème année. 23 septembre 2014. E-mail mlahby@gmail.com Chapitre 1 La récursivité Programmation en Python 2ème année E-mail mlahby@gmailcom 23 septembre 2014 Programmation en Python 2ème année CPGE GSR 2014-2015 1/ 24 Plan 1 Rappel 2 Récurrence en mathématique

Plus en détail

Structures de données, IMA S6

Structures de données, IMA S6 Structures de données, IMA S6 Arbres Binaires d après un cours de N. Devésa, Polytech Lille. Laure Gonnord http://laure.gonnord.org/pro/teaching/ Laure.Gonnord@polytech-lille.fr Université Lille 1 - Polytech

Plus en détail

Arbres binaires de recherche (ABR) Binary Search Trees (BST)

Arbres binaires de recherche (ABR) Binary Search Trees (BST) LSVIII-BIM Algorithmie, 2015 Arbres binaires de recherche (ABR) Binary Search Trees (BST) I. Arbres binaires 1. Structure 2. Parcours II. Arbres binaires de recherche 1. Définition 2. Opérations sur les

Plus en détail

Expressions, types et variables en Python

Expressions, types et variables en Python Expressions, types et variables en Python 2015-08-26 1 Expressions Les valeurs désignent les données manipulées par un algorithme ou une fonction. Une valeur peut ainsi être : un nombre, un caractère,

Plus en détail

Séance de TD 05 TD05. 1 Exercice 1. 1.1 Question 1 : dessins des ABR avec hauteurs différentes AG51

Séance de TD 05 TD05. 1 Exercice 1. 1.1 Question 1 : dessins des ABR avec hauteurs différentes AG51 Séance de TD 05 1 Exercice 1 1. Dessinez les arbres binaires de recherche de hauteur 2,3,4,5 et 6 pour le même ensemble de clés S = 1,4,5,10,16,17,21. 2. Donnez l algorithme de l opération ArbreRechercher(x,k)

Plus en détail

Architecture des Systèmes d Information Architecture des Systèmes d Information

Architecture 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étail

EXAMEN FINAL. 2 Février 2006-2 heures Aucun document autorisé

EXAMEN FINAL. 2 Février 2006-2 heures Aucun document autorisé MIE - E ANNÉE ALGORITHMIQUE GÉNÉRALE Vincent Mousseau EXAMEN FINAL Février 006 - heures Aucun document autorisé Exercice : On s intéresse à la gestion informatique des réservations sur l année d une salle

Plus en détail

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Arts & Métiers Filière PSI

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Arts & Métiers Filière PSI Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Arts & Métiers Filière PSI Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes

Plus en détail

Probabilités conditionnelles

Probabilités conditionnelles 22 Probabilités conditionnelles Ω, B, P est un espace probabilisé. 22. Définition et propriétés des probabilités conditionnelles Considérons l expérience aléatoire qui consiste à lancer deux fois un dé

Plus en détail

Listes et arbres binaires

Listes et arbres binaires Des structures de données dynamiques Listes, Listes ordonnées Arbres binaires, arbre binaires de recherche Listes chaînées Utile si le nombre d éléments n est pas connu à l avance et évolue beaucoup. Permet

Plus en détail

Plan. Arbres équilibrés Arbres AVL Arbres a-b Quelques compléments de Java. Amphi 9 1

Plan. Arbres équilibrés Arbres AVL Arbres a-b Quelques compléments de Java. Amphi 9 1 Plan Arbres équilibrés Arbres AVL Arbres a-b Quelques compléments de Java Amphi 9 1 Structures d'arbre Les structures d'arbre permettent de réaliser des opérations dynamiques, telles que recherche, prédécesseur,

Plus en détail

Enveloppes convexes dans le plan

Enveloppes convexes dans le plan ÉCOLE POLYTECHNIQUE ÉCOLES NORMALES SUPÉRIEURES ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES CONCOURS D ADMISSION FILIÈRE MP HORS SPÉCIALITÉ INFO FILIÈRE PC COMPOSITION D INFORMATIQUE B (XECLR)

Plus en détail

Ecole Nationale Polytechnique Département Génie Industriel Année Universitaire 2011/2012. Les Files

Ecole Nationale Polytechnique Département Génie Industriel Année Universitaire 2011/2012. Les Files . Ecole Nationale Polytechnique Département Génie Industriel Année Universitaire 2011/2012 Algorithmique et Programmation Les structures de données Les Files Introduction Une File ressemble fortement à

Plus en détail

De l art d écrire des programmes qui résolvent des problèmes que l on ne sait pas résoudre soi-même!

De l art d écrire des programmes qui résolvent des problèmes que l on ne sait pas résoudre soi-même! Chapitre 1 La récursivité De l art d écrire des programmes qui résolvent des problèmes que l on ne sait pas résoudre soi-même! 1.1 Définition et types de récursivité Définition 1 (Définition récursive,

Plus en détail

Introduction à l Algorithmique

Introduction à l Algorithmique Introduction à l Algorithmique N. Jacon 1 Définition et exemples Un algorithme est une procédure de calcul qui prend en entier une valeur ou un ensemble de valeurs et qui donne en sortie une valeur ou

Plus en détail

Utilitaires Tableau [tb01] - Outils

Utilitaires Tableau [tb01] - Outils Utilitaires Tableau [tb01] - Outils Karine Zampieri, Stéphane Rivière, Béatrice Amerein-Soltner Unisciel algoprog Version 9 avril 2015 Table des matières 1 Utilitaires Tableau / tb01outils1 (C++) 1 1.1

Plus en détail

Surveillance automatique [dx04] - Exercice

Surveillance automatique [dx04] - Exercice Surveillance automatique [dx04] - Exercice Karine Zampieri, Stéphane Rivière, Béatrice Amerein-Soltner Unisciel algoprog Version 9 avril 2015 Table des matières 1 Le terrain 1 1.1 Représentation du terrain..........................

Plus en détail

Arbres binaires de recherche

Arbres binaires de recherche Chapitre 6 Arbres binaires de recherche 6.1 Introduction On a étudié le problème de la recherche dans une collection d éléments ordonnés entre eux : on a montré que Pour une liste contiguë, la recherche

Plus en détail

Algorithmes pour les graphes

Algorithmes pour les graphes Algorithmes pour les graphes 1 Définitions Un graphe est représenté par : V : L ensemble des noeuds ou sommets. E : L ensemble des arcs ou arrêtes. E est un sous-ensemble de V xv. On note G = (V, E). Si

Plus en détail

Informatique 2014-2015 MP/MP*/PC/PC*/PSI* DS1 Samedi 22 novembre. Exercice N 1 A la découverte de la notation polonaise inversée

Informatique 2014-2015 MP/MP*/PC/PC*/PSI* DS1 Samedi 22 novembre. Exercice N 1 A la découverte de la notation polonaise inversée Le sujet comporte un total de 3 exercices indépendants qui peuvent être traités dans l ordre de votre choix. Exercice N 1 A la découverte de la notation polonaise inversée Introduction La notation polonaise

Plus en détail

Mathématiques Pour l Informatique I : Théorie des Ensembles et Relations. Serge Iovleff

Mathématiques Pour l Informatique I : Théorie des Ensembles et Relations. Serge Iovleff Mathématiques Pour l Informatique I : Théorie des Ensembles et Relations Serge Iovleff 13 septembre 2004 Quelques références Ma Page http ://www.iut-info.univ-lille1.fr/ iovleff Un Cours réalisé par des

Plus en détail

Génie Logiciel Industriel - Travaux pratiques

Génie Logiciel Industriel - Travaux pratiques - Travaux pratiques TP1 : Recherche par dichotomie I. Introduction. L objectif de ce TP est de mettre en pratique des notions de base du langage C (entrées/sorties, structure de contrôle, fonctions, ).

Plus en détail

Exercice 1 (API Java)

Exercice 1 (API Java) Programmation orientée objet TP 3 L2 MPCIE API Java, Paquetages Exercice 1 (API Java) 1. Écrire la classe Ensemble comme étant une collection d'éléments ne contenant pas de doublon. Elle sera donc implémentée

Plus en détail

M2 Informatique/Réseaux Université Pierre et Marie Curie UE APMM

M2 Informatique/Réseaux Université Pierre et Marie Curie UE APMM TD TECHNIQUES DE CODAGE ET DE COMPRESSION. LANGAGE / CODAGE / VALENCE.. Rappels Toute fraction intelligible d un message est constituée de symboles. Le langage est l ensemble de ces symboles. Un codage

Plus en détail

Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés.

Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés. Examen Programmation ENSAE première année 2008 (rattrapage) Examen écrit (1 heure) Tous documents autorisés. 1 0.0.1 Suite récurrente (Fibonacci) * Réécrire la fonction u de façon à ce qu elle ne soit

Plus en détail

L2 - Algorithmique et structures de données (Année 2010/2011) Examen (2 heures)

L2 - Algorithmique et structures de données (Année 2010/2011) Examen (2 heures) L2 - lgorithmique et structures de données (nnée 2010/2011) Delacourt, Phan Luong, Poupet xamen (2 heures) Les documents (cours, TD, TP) sont autorisés. Les quatre exercices sont indépendants. À la fin

Plus en détail

3 Structures de données Tableaux Listes. Problème du tri. Tri rapide

3 Structures de données Tableaux Listes. Problème du tri. Tri rapide Cours 2 Algorithmique IN102-02 Michel Mauny ENSTA Prénom.Nom@ensta.fr 1 Tris Retour sur fusion et quicksort Complexité minimale Efficacité 2 Récursivité 3 Structures de données Tableaux Listes Michel Mauny

Plus en détail

Algorithmique P2. Tables et Hachage Ulg, 2009-2010 R.Dumont

Algorithmique P2. Tables et Hachage Ulg, 2009-2010 R.Dumont Algorithmique P2 Tables et Hachage Ulg, 2009-2010 R.Dumont Tables Table = Ensemble d'entrées. Entrées = Couples de type (clef, information) Tables - Représentation Par tableau Entrée = (indice, données)

Plus en détail

Fraternité d entiers (Version tableau) [th08] - Exercice

Fraternité d entiers (Version tableau) [th08] - Exercice Fraternité d entiers (Version tableau) [th08] - Exercice Karine Zampieri, Stéphane Rivière, Béatrice Amerein-Soltner Unisciel algoprog Version 10 avril 2015 Table des matières 1 Stratégie naïve 1 1.1 Stratégie

Plus en détail

ÉCOLE POLYTECHNIQUE ÉCOLE NORMALE SUPÉRIEURE DE CACHAN ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES FILIÈRE MP HORS SPÉCIALITÉ INFO

ÉCOLE POLYTECHNIQUE ÉCOLE NORMALE SUPÉRIEURE DE CACHAN ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES FILIÈRE MP HORS SPÉCIALITÉ INFO ÉCOLE POLYTECHNIQUE ÉCOLE NORMALE SUPÉRIEURE DE CACHAN ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES CONCOURS D ADMISSION 2012 FILIÈRE MP HORS SPÉCIALITÉ INFO FILIÈRE PC COMPOSITION D INFORMATIQUE

Plus en détail

Variables (locales et globales), fonctions et procédures

Variables (locales et globales), fonctions et procédures Algorithmique... Variables (locales et globales), fonctions et procédures Nicolas Delestre et Michel Mainguenaud {Nicolas.Delestre,Michel.Mainguenaud}@insa-rouen.fr Modifié pour l ENSICAEN par : Luc Brun

Plus en détail

Fiche de révisions - Algorithmique

Fiche de révisions - Algorithmique Fiche de révisions - Algorithmique Rédigé par : Jimmy Paquereau 1. Généralités Algorithme : un algorithme est la description d une procédure à suivre afin de résoudre un problème donné. Il n est pas nécessairement

Plus en détail

Feuille d exercices 1

Feuille d exercices 1 Complexité Exercice 1 Démontrer que a) n 2 /2 O(n) b) 5n+3 = O(n) c) 30n+5 = O(n 2 ) d) 4n 3 +5n 2 +10 = O(n 3 ). Exercice 2 Donnez la complexité (en fonction de n) de l algorithme suivant. Vous donnerez

Plus en détail

Cours Algorithmique, 2ème partie AS IUT

Cours Algorithmique, 2ème partie AS IUT Cours Algorithmique, 2ème partie AS IUT Cours 2 : Arbres Binaires Anne Vilnat http://www.limsi.fr/individu/anne/coursalgo Plan 1 Représentations arborescentes 2 Définition d un arbre binaire récursive

Plus en détail

INF130 - Ordinateurs et programmation. Semaine 08. Document présenté par Frédérick Henri et conçu par les enseignants en informatique du SEG

INF130 - Ordinateurs et programmation. Semaine 08. Document présenté par Frédérick Henri et conçu par les enseignants en informatique du SEG INF130 - Ordinateurs et programmation Semaine 08 Document présenté par Frédérick Henri et conçu par les enseignants en informatique du SEG Retour sur l'examen intra Objectifs Tableaux à deux dimensions

Plus en détail

1 Les arbres binaires en Java

1 Les arbres binaires en Java Université de Nice-Sophia Antipolis Deug MIAS-MI 1 Algorithmique & Programmation 2002 2003 TP N 10 Arbres binaires Buts : structuration des arbres binaires en Java. classes internes. objets de parcours.

Plus en détail

Série d exercices N 9 Arbres

Série d exercices N 9 Arbres Série d exercices N 9 Arbres Exercice 1 a) Ecrire une fonction ARBIN creerarbreentiers() qui permet de créer et de renvoyer l arbre d entiers suivant : b) Ecrire une fonction int feuilles(arbin a) qui

Plus en détail

Devoir Surveillé informatique MP, PC, PSI

Devoir Surveillé informatique MP, PC, PSI NOM : Classe : Devoir Surveillé informatique MP, PC, PSI L utilisation des calculatrices n est pas autorisée pour cette épreuve. Le langage de programmation choisi est Python. L espace laissé pour les

Plus en détail

INF601 : Algorithme et Structure de données

INF601 : 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étail

10' - LES ARBRES BINAIRES

10' - LES ARBRES BINAIRES Ch 10' - LES ARBRES BINAIRES On va restreindre les capacités des arbres en obligeant les nœuds à posséder au maximum deux sous-arbres. Ces nouveaux arbres seront plus faciles à maîtriser que les arbres

Plus en détail

Machines de Turing. Chapitre 14 14.1. DÉFINITION ET FONCTIONNEMENT

Machines de Turing. Chapitre 14 14.1. DÉFINITION ET FONCTIONNEMENT Chapitre 4 Machines de Turing Dans ce chapitre on présente un modèle de calcul introduit dans les années 3 par Turing, les machines de Turing. Ces machines formalisent la notion de calculabilité. La thèse

Plus en détail

Arbres binaires Version prof Version prof

Arbres binaires Version prof Version prof Arbres binaires Version prof Version prof types /* déclaration du type t_element */ t_arbrebinaire = t_noeudbinaire t_noeudbinaire = enregistrement t_element cle t_arbrebinaire fg, fd n enregistrement

Plus en détail

Introduction au langage

Introduction au langage Introduction au langage Un langage de programmation : de haut niveau interprété orienté objet si on le souhaite rapide à écrire et proche du pseudo-code simple tant qu on fait des choses simples Un programme

Plus en détail

Programmation avancée

Programmation avancée Programmation avancée Chapitre 1 : Complexité et les ABR (arbres binaires de recherche) 1 1 IFSIC Université de Rennes-1 M2Crypto, octobre 2011 Plan du cours 1 2 3 4 5 6 7 8 9 10 Algorithmes Définition

Plus en détail

Algorithme et Programmation

Algorithme et Programmation Année universitaire 2009-2010 Algorithme et Programmation Sujets des Travaux Dirigés et des Travaux pratiques 2 ème année INSA MIC 2 ème année INSA MIC Année universitaire 2009-2010 Algorithme et Programmation

Plus en détail

Cours d analyse 1ère année. Rhodes Rémi

Cours d analyse 1ère année. Rhodes Rémi Cours d analyse 1ère année Rhodes Rémi 10 décembre 2008 2 Table des matières 1 Propriétés des nombres réels 5 1.1 Sous-ensembles remarquables de R........................ 5 1.2 Relations d ordre..................................

Plus en détail

Algorithmique avancée en Python TDs

Algorithmique avancée en Python TDs Algorithmique avancée en Python TDs Denis Robilliard sept. 2014 1 TD 1 Révisions 1. Ecrire un programme qui saisit un entier, et détermine puis affiche si l entier est pair où impair. 2. Ecrire un programme

Plus en détail

TOPOLOGIE DE LA DROITE REELLE

TOPOLOGIE DE LA DROITE REELLE TOPOLOGIE DE LA DROITE REELLE P. Pansu 16 mai 2005 1 Qu est-ce que la topologie? C est l étude des propriétés des objets qui sont conservées par déformation continue. Belle phrase, mais qui nécessite d

Plus en détail

ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE Section d Informatique et de Systèmes de Communication

ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE Section d Informatique et de Systèmes de Communication ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE Section d Informatique et de Systèmes de Communication Corrigé de la série 9 3 Juin 2005 1. Augmenter les poids a) Soit T l ensemble de tous les arbres couvrants

Plus en détail

MATHÉMATIQUES - SPÉCIALITÉ. Table des matières

MATHÉMATIQUES - SPÉCIALITÉ. Table des matières MATHÉMATIQUES - SPÉCIALITÉ F.HUMBERT Table des matières Chapitre A - Congruences 2 Chapitre B - PGCD 5 Chapitre C - Nombres premiers 11 Chapitre D - Matrices et évolution de processus 14 Chapitre E - Matrices

Plus en détail

Probabilités et statistique

Probabilités et statistique Probabilités et statistique Université Paris 1 Panthéon-Sorbonne Cours de deuxième année de licence de sciences économiques Fabrice Rossi Cette œuvre est mise à disposition selon les termes de la licence

Plus en détail

Algorithmique et Programmation Impérative 2 Les arbres binaires de recherche

Algorithmique et Programmation Impérative 2 Les arbres binaires de recherche Algorithmique et Programmation Impérative 2 Les arbres binaires de recherche N.E. Oussous oussous@lifl.fr FIL USTL SDC - Licence p.1/16 Arbres binaires de recherche Un arbre binaire T est un arbre binaire

Plus en détail

Notion de complexité

Notion de complexité 1 de 27 Algorithmique Notion de complexité Florent Hivert Mél : Florent.Hivert@lri.fr Adresse universelle : http://www-igm.univ-mlv.fr/ hivert Outils mathématiques 2 de 27 Outils mathématiques : analyse

Plus en détail

Les arbres binaires de recherche

Les 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étail

Entraînement au concours ACM-ICPC

Entraînement au concours ACM-ICPC Entraînement au concours ACM-ICPC Conteneurs des bibliothèques standard C++ et Java Page 1 / 23 Plan Généralités Collections de base Collections à usage plus rare Page 2 / 23 Collections Les collections

Plus en détail

Cours d Algorithmique et Complexité

Cours d Algorithmique et Complexité Cours d Algorithmique et Complexité Structures de données (2e suite) Catalin Dima Arbres binaires de recherche Propriété de base des arbres binaires de recherche Soit x un noeud de l arbre. Alors : 1.

Plus en détail

Avertissement! Dans tout ce chapître, C désigne une partie convexe de IR n, et f une fonction. 9.1 Fonctions affines, convexes, strictement convexes

Avertissement! Dans tout ce chapître, C désigne une partie convexe de IR n, et f une fonction. 9.1 Fonctions affines, convexes, strictement convexes Chp. 9. Convexité Avertissement! Dans tout ce chapître, C désigne une partie convexe de IR n, et f une fonction numérique partout définie sur C. 9.1 Fonctions affines, convexes, strictement convexes Définition

Plus en détail

Routage compact. 1 Préambule. 2 Détail du sujet. Sujet proposé par Gilles Schaeffer Gilles.Schaeffer@lix.polytechnique.fr. 2.1 Un modèle de routage

Routage compact. 1 Préambule. 2 Détail du sujet. Sujet proposé par Gilles Schaeffer Gilles.Schaeffer@lix.polytechnique.fr. 2.1 Un modèle de routage Routage compact Sujet proposé par Gilles Schaeffer Gilles.Schaeffer@lix.polytechnique.fr URL de suivi : http://www.enseignement.polytechnique.fr/profs/informatique/ Gilles.Schaeffer/INF431/projetX06.html

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 5. Tableaux

Info0101 Intro. à l'algorithmique et à la programmation. Cours 5. Tableaux Info0101 Intro. à l'algorithmique et à la programmation Cours 5 Tableaux Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

Tableaux. Tableaux en Java (introduction)

Tableaux. Tableaux en Java (introduction) en Java (introduction) Avertissement : ce cours ne présente qu une version «édulcorée» des tableaux. Ne sont abordés que les tableaux de types primitifs et tous les aspects «objets» sont masqués. Philippe

Plus en détail

Introduction à l algorithmique et à la. de programmation.

Introduction à l algorithmique et à la. de programmation. Introduction 2006/4/16 11:53 page 1 #1 Introduction à l algorithmique et à la programmation Jean-Éric Pin Cette section de l encyclopédie est consacrée à trois outils fondamentaux de l informatique : l

Plus en détail

M2 MPRO. Optimisation dans les Graphes 2014-2015

M2 MPRO. Optimisation dans les Graphes 2014-2015 M2 MPRO Optimisation dans les Graphes 2014-2015 Programmation linéaire et problèmes d'optimisation dans les graphes 1 Problèmes d'optimisation dans les graphes : quelles méthodes pour les résoudre? Théorie

Plus en détail

1. Les fondements de l informatique 13

1. Les fondements de l informatique 13 Introduction à l'algorithmique 1. Les fondements de l informatique 13 1.1 Architecture de Von Neumann 13 1.2 La machine de Turing 17 1.3 Représentation interne des instructions et des données 19 1.3.1

Plus en détail

Arbres bien équilibrés

Arbres bien équilibrés Arbres bien équilibrés ENSIIE : Programmation avancée 1/24 Recherche par dichotomie on aimerait avoir des opérations de recherche, d insertion et de suppression efficaces en moyenne et dans le pire des

Plus en détail

Introduction à l informatique et la programmation IF1 2010-2011

Introduction à l informatique et la programmation IF1 2010-2011 Préambule Organisation Organisation générale Introduction à l informatique et la programmation IF 200-20 Matthieu Picantin Cours le jeudi de 4h30 à 6h30 en amphi 2A groupe α : 6/09 4/0 28/0 25/ 09/2 groupe

Plus en détail

Arnaud DABOUIS Vincent HURBOURQUE IMAC 1. PROJET C : Traitement d images

Arnaud DABOUIS Vincent HURBOURQUE IMAC 1. PROJET C : Traitement d images PROJET C : Traitement d images 1 SOMMAIRE 1) Schéma et structure a) Schéma de la structure b) Les structures utilisées La structure image La structure calque La structure LUT La structure Historique et

Plus en détail

[http://mp.cpgedupuydelome.fr] édité le 29 décembre 2015 Enoncés 1. b) Soit (u n ) n N une suite d éléments de [0 ; 1]. Montrer

[http://mp.cpgedupuydelome.fr] édité le 29 décembre 2015 Enoncés 1. b) Soit (u n ) n N une suite d éléments de [0 ; 1]. Montrer [http://mp.cpgedupuydelome.fr] édité le 9 décembre 05 Enoncés Familles sommables Ensemble dénombrable a) Calculer n+ Exercice [ 03897 ] [Correction] Soit f : R R croissante. Montrer que l ensemble des

Plus en détail

TP02 Approfondissement du langage: les listes

TP02 Approfondissement du langage: les listes Kléber, PCSI1&3 2015-2016 I. Accès à un élément donné via sa position 1/5 TP02 Approfondissement du langage: les listes Comme ce sera le cas durant toute l année, votre dossier de travail est accessible

Plus en détail

Chapitre 4 Automates à pile et langages hors-contexte

Chapitre 4 Automates à pile et langages hors-contexte Chapitre 4 Automates à pile et langages hors-contexte 87 Introduction Langage a n b n n est pas accepté par un automate fini. Par contre L k = {a n b n n k} est accepté. Mémoire finie, mémoire infinie,

Plus en détail

Algorithmique - Correction du TD2

Algorithmique - Correction du TD2 Algorithmique - Correction du TD2 IUT 1ère Année 5 octobre 2012 1 Les tests Exercice 1. Construire un arbre de décision et l algorithme correspondant permettant de déterminer la catégorie sportive d un

Plus en détail

Suites numériques. Sommaire :

Suites numériques. Sommaire : Suites numériques I Activité n o 2 page 295 Sommaire : II Généralités sur les suites numériques III Variations et bornes IV Suites arithmétiques V Suites géométriques VI Suites convergentes VII Représentation

Plus en détail

Notes de cours d algorithmique L3

Notes de cours d algorithmique L3 UFR d Informatique Paris 7 Paris Diderot Année 2010 2011 Notes de cours d algorithmique L3 François Laroussinie Notes de cours d algorithmique L3 François Laroussinie francois.laroussinie@liafa.jussieu.fr

Plus en détail