Rappel d'avant-hier. Margaux Nattaf 1 / 22
|
|
- Georgette Simoneau
- il y a 7 ans
- Total affichages :
Transcription
1 Rappel d'avant-hier Margaux Nattaf 1 / 22
2 Rappel d'avant-hier Problématique : On cherche à mesurer l'ecacité d'un algorithme (en temps). Margaux Nattaf 1 / 22
3 Rappel d'avant-hier Problématique : On cherche à mesurer l'ecacité d'un algorithme (en temps). Le temps d'exécution est proportionnel au nombre d'opérations élementaires eectués. Margaux Nattaf 1 / 22
4 Rappel d'avant-hier Problématique : On cherche à mesurer l'ecacité d'un algorithme (en temps). Le temps d'exécution est proportionnel au nombre d'opérations élementaires eectués. Nombre d'opérations dépend de la taille de la donnée Margaux Nattaf 1 / 22
5 Rappel d'avant-hier Problématique : On cherche à mesurer l'ecacité d'un algorithme (en temps). Le temps d'exécution est proportionnel au nombre d'opérations élementaires eectués. Nombre d'opérations dépend de la taille de la donnée et de la diculté de l'instance ; Margaux Nattaf 1 / 22
6 Rappel d'avant-hier Problématique : On cherche à mesurer l'ecacité d'un algorithme (en temps). Le temps d'exécution est proportionnel au nombre d'opérations élementaires eectués. Nombre d'opérations dépend de la taille de la donnée et de la diculté de l'instance ; En général, on mesure la complexité asymptotique et dans le pire cas. Margaux Nattaf 1 / 22
7 Programme d'aujourd'hui Règles de réduction pour O(.) Margaux Nattaf 2 / 22
8 Programme d'aujourd'hui Règles de réduction pour O(.) Technique de calcul de complexité Méthode par substitution Théorème Maître Margaux Nattaf 2 / 22
9 Programme d'aujourd'hui Règles de réduction pour O(.) Technique de calcul de complexité Méthode par substitution Théorème Maître Taille de la donnée Margaux Nattaf 2 / 22
10 Programme d'aujourd'hui Règles de réduction pour O(.) Technique de calcul de complexité Méthode par substitution Théorème Maître Taille de la donnée Classes complexité Algorithmes Polynomiaux Algorithmes Exponnentiels Margaux Nattaf 2 / 22
11 Règles de calculs : combinaisons des complexités Les instructions de base prennent un temps constant, noté O(1) ; Margaux Nattaf 3 / 22
12 Règles de calculs : combinaisons des complexités Les instructions de base prennent un temps constant, noté O(1) ; On additionne les complexités d'opérations en séquence : O(f 1 (n)) + O(f 2 (n)) = O(f 1 (n) + f 2 (n)) Margaux Nattaf 3 / 22
13 Règles de calculs : combinaisons des complexités Les instructions de base prennent un temps constant, noté O(1) ; On additionne les complexités d'opérations en séquence : O(f 1 (n)) + O(f 2 (n)) = O(f 1 (n) + f 2 (n)) Même chose pour les branchements conditionnels : Margaux Nattaf 3 / 22
14 Règles de calculs : combinaisons des complexités Les instructions de base prennent un temps constant, noté O(1) ; On additionne les complexités d'opérations en séquence : O(f 1 (n)) + O(f 2 (n)) = O(f 1 (n) + f 2 (n)) Même chose pour les branchements conditionnels : Exemple si <condition> alors #instructions (1); sinon #instructions (2) ; n Margaux Nattaf 3 / 22
15 Règles de calculs : combinaisons des complexités Les instructions de base prennent un temps constant, noté O(1) ; On additionne les complexités d'opérations en séquence : O(f 1 (n)) + O(f 2 (n)) = O(f 1 (n) + f 2 (n)) Même chose pour les branchements conditionnels : Exemple si <condition> alors #instructions (1); sinon #instructions (2) ; n O(g(n)) Margaux Nattaf 3 / 22
16 Règles de calculs : combinaisons des complexités Les instructions de base prennent un temps constant, noté O(1) ; On additionne les complexités d'opérations en séquence : O(f 1 (n)) + O(f 2 (n)) = O(f 1 (n) + f 2 (n)) Même chose pour les branchements conditionnels : Exemple si <condition> alors #instructions (1); sinon #instructions (2) ; n O(g(n)) O(f 1 (n)) Margaux Nattaf 3 / 22
17 Règles de calculs : combinaisons des complexités Les instructions de base prennent un temps constant, noté O(1) ; On additionne les complexités d'opérations en séquence : O(f 1 (n)) + O(f 2 (n)) = O(f 1 (n) + f 2 (n)) Même chose pour les branchements conditionnels : Exemple si <condition> alors #instructions (1); sinon #instructions (2) ; n O(g(n)) O(f 1 (n)) O(f 2 (n)) Margaux Nattaf 3 / 22
18 Règles de calculs : combinaisons des complexités Les instructions de base prennent un temps constant, noté O(1) ; On additionne les complexités d'opérations en séquence : O(f 1 (n)) + O(f 2 (n)) = O(f 1 (n) + f 2 (n)) Même chose pour les branchements conditionnels : Exemple si <condition> alors #instructions (1); sinon #instructions (2) ; n O(g(n)) O(f 1 (n)) O(f 2 (n)) = O(g(n) + f 1 (n) + f 2 (n)) Margaux Nattaf 3 / 22
19 Règles de calculs : combinaison des complexité Dans les boucles, on multiplie la complexité du corps de la boucle par le nombre d'itérations ; Margaux Nattaf 4 / 22
20 Règles de calculs : combinaison des complexité Dans les boucles, on multiplie la complexité du corps de la boucle par le nombre d'itérations ; La complexité d'une boucle while se calcul comme suit : Exemple en supposant qu'on a m itérations tant que <condition> faire #instructions ; n O(g(n)) O(f (n)) } = O(m (g(n) + f (n))) Margaux Nattaf 4 / 22
21 Règles de calculs : combinaison des complexité Dans les boucles, on multiplie la complexité du corps de la boucle par le nombre d'itérations ; La complexité d'une boucle for se calcul comme suit : Exemple pour i allant de a à b faire #instructions ; n O(f (n)) } = O((b a + 1) f (n)) Margaux Nattaf 4 / 22
22 Calcul de la complexité asymptotique d'un algorithme Pour calculer la complexité d'un algorithme : Margaux Nattaf 5 / 22
23 Calcul de la complexité asymptotique d'un algorithme Pour calculer la complexité d'un algorithme : 1 on calcule la complexité de chaque partie de l'algorithme ; Margaux Nattaf 5 / 22
24 Calcul de la complexité asymptotique d'un algorithme Pour calculer la complexité d'un algorithme : 1 on calcule la complexité de chaque partie de l'algorithme ; 2 on combine ces complexités conformément aux règles qu'on vient de voir ; Margaux Nattaf 5 / 22
25 Calcul de la complexité asymptotique d'un algorithme Pour calculer la complexité d'un algorithme : 1 on calcule la complexité de chaque partie de l'algorithme ; 2 on combine ces complexités conformément aux règles qu'on vient de voir ; 3 on simplie le résultat grâce aux règles de simplications qu'on a vues ; élimination des constantes, et conservation du (des) termes dominants Margaux Nattaf 5 / 22
26 Exemple : calcul de la factorielle de n N Reprenons le calcul de la factorielle, qui nécessitait n opérations : Algorithme : Factorielle(n) Données : un entier n Résultat : un entier valant n! 1 fact, i : entier; 2 début 3 fact := 2; 4 pour i allant de 3 à n faire 5 fact = fact i; 6 n 7 retourner fact; 8 n Margaux Nattaf 6 / 22
27 Exemple : calcul de la factorielle de n N Reprenons le calcul de la factorielle, qui nécessitait n opérations : Algorithme : Factorielle(n) Données : un entier n Résultat : un entier valant n! 1 fact, i : entier; 2 début 3 fact := 2; 4 pour i allant de 3 à n faire 5 fact = fact i; 6 n 7 retourner fact; 8 n L3 initialisation : O(1) Margaux Nattaf 6 / 22
28 Exemple : calcul de la factorielle de n N Reprenons le calcul de la factorielle, qui nécessitait n opérations : Algorithme : Factorielle(n) Données : un entier n Résultat : un entier valant n! 1 fact, i : entier; 2 début 3 fact := 2; 4 pour i allant de 3 à n faire 5 fact = fact i; 6 n 7 retourner fact; 8 n L3 L4 initialisation : O(1) itérations : O(n) Margaux Nattaf 6 / 22
29 Exemple : calcul de la factorielle de n N Reprenons le calcul de la factorielle, qui nécessitait n opérations : Algorithme : Factorielle(n) Données : un entier n Résultat : un entier valant n! 1 fact, i : entier; 2 début 3 fact := 2; 4 pour i allant de 3 à n faire 5 fact = fact i; 6 n 7 retourner fact; 8 n L3 L4 L5 initialisation : O(1) itérations : O(n) multiplication + aectation : O(1) Margaux Nattaf 6 / 22
30 Exemple : calcul de la factorielle de n N Reprenons le calcul de la factorielle, qui nécessitait n opérations : Algorithme : Factorielle(n) Données : un entier n Résultat : un entier valant n! 1 fact, i : entier; 2 début 3 fact := 2; 4 pour i allant de 3 à n faire 5 fact = fact i; 6 n 7 retourner fact; 8 n L3 L4 L5 L7 initialisation : O(1) itérations : O(n) multiplication + aectation : O(1) O(1) Margaux Nattaf 6 / 22
31 Exemple : calcul de la factorielle de n N Reprenons le calcul de la factorielle, qui nécessitait n opérations : Algorithme : Factorielle(n) Données : un entier n Résultat : un entier valant n! 1 fact, i : entier; 2 début 3 fact := 2; 4 pour i allant de 3 à n faire 5 fact = fact i; 6 n 7 retourner fact; 8 n L3 L4 L5 L7 initialisation : O(1) itérations : O(n) multiplication + aectation : O(1) O(1) Nombre total d'opérations : O(1) + O(n) O(1) + O(1) = O(n) Margaux Nattaf 6 / 22
32 Récurrences Algorithme : TriFusion(T) Données : un tableau T Résultat : le tableau T trié mil : entier; début si T 1 alors retourner T ; n sinon T +1 milieu := ; 2 retourner Fusion(T [1..mil], T [mil.. T ]); n n Margaux Nattaf 7 / 22
33 Récurrences Algorithme : TriFusion(T) Données : un tableau T Résultat : le tableau T trié mil : entier; début si T 1 alors retourner T ; n sinon T +1 milieu := ; 2 retourner Fusion(T [1..mil], T [mil.. T ]); n n Algorithme : Fusion(T1,T2) Données : deux tableaux T 1 et T 2 Résultat : un tableau T trié contenant les éléments de T 1 et de T 2 T : tableau de taille T 1 + T 2; début si T 1 = 0 alors T = T 2; sinon si T 2 = 0 alors T = T 1; sinon si T 1[1] < T 2[1] alors T [1] = T 1[1]; T [2.. T ] = Fusion(T 1[2.. T 1, T 2[1.. T 2 ]); sinon T [1] = T 2[1]; T [2.. T ] = Fusion(T 1[1.. T 1, T 2[2.. T 2 ]); n retourner T n Margaux Nattaf 7 / 22
34 Illustration du Tri Fusion Margaux Nattaf 8 / 22
35 Récurrences Temps d'exécution T dans le pire des cas du tri fusion pour trier un tableau de n entiers Margaux Nattaf 9 / 22
36 Récurrences Temps d'exécution T dans le pire des cas du tri fusion pour trier un tableau de n entiers T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 Margaux Nattaf 9 / 22
37 Récurrences Temps d'exécution T dans le pire des cas du tri fusion pour trier un tableau de n entiers T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 Complexité du tri fusion : T (n) = Θ(n log n) Margaux Nattaf 9 / 22
38 Récurrences Temps d'exécution T dans le pire des cas du tri fusion pour trier un tableau de n entiers T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 Complexité du tri fusion : T (n) = Θ(n log n) Comment passer de l'un à l'autre? Méthode par substitution Méthode générale (théorème maître) Margaux Nattaf 9 / 22
39 Méthode par substitution Il faut avoir une intuition sur la forme de la solution (ici : O(n log n)) Margaux Nattaf 10 / 22
40 Méthode par substitution Il faut avoir une intuition sur la forme de la solution (ici : O(n log n)) Permet de borner une récurrence soit par excès, soit par défaut (par en haut ou par en bas) Margaux Nattaf 10 / 22
41 Méthode par substitution Il faut avoir une intuition sur la forme de la solution (ici : O(n log n)) Permet de borner une récurrence soit par excès, soit par défaut (par en haut ou par en bas) On va montrer qu'il existe c > 0 t.q. T (n) = 2T ( n/2 ) + n cn log n Margaux Nattaf 10 / 22
42 Méthode par substitution Il faut avoir une intuition sur la forme de la solution (ici : O(n log n)) Permet de borner une récurrence soit par excès, soit par défaut (par en haut ou par en bas) On va montrer qu'il existe c > 0 t.q. T (n) = 2T ( n/2 ) + n cn log n On procède par induction ( récurrence) Margaux Nattaf 10 / 22
43 Méthode par substitution (I) T (n) = 2T ( n/2 ) + n cn log n Il faut montrer que la formule est vraie pour les conditions limites de la récurrence pour des données de petite taille, i.e. n = 1 ou 2 en générale Margaux Nattaf 11 / 22
44 Méthode par substitution (I) T (n) = 2T ( n/2 ) + n cn log n Il faut montrer que la formule est vraie pour les conditions limites de la récurrence pour des données de petite taille, i.e. n = 1 ou 2 en générale Problème : c'est faux pour n = 1 car c1 log 1 = 0 ne peut être < T (1) ; Margaux Nattaf 11 / 22
45 Méthode par substitution (I) T (n) = 2T ( n/2 ) + n cn log n Il faut montrer que la formule est vraie pour les conditions limites de la récurrence pour des données de petite taille, i.e. n = 1 ou 2 en générale Problème : c'est faux pour n = 1 car c1 log 1 = 0 ne peut être < T (1) ; Mais on cherche à montrer la complexité pour des tailles supérieures ou égale n 0 pour de grande valeur de n... Margaux Nattaf 11 / 22
46 Méthode par substitution (I) T (n) = 2T ( n/2 ) + n cn log n Il faut montrer que la formule est vraie pour les conditions limites de la récurrence pour des données de petite taille, i.e. n = 1 ou 2 en générale Problème : c'est faux pour n = 1 car c1 log 1 = 0 ne peut être < T (1) ; Mais on cherche à montrer la complexité pour des tailles supérieures ou égale n 0 pour de grande valeur de n... On utilise n 0 = 2 et on vérie que la formule tient pour T (2) et T (3) (car ce sont les deux valeurs qui dépendent de T (1)). Margaux Nattaf 11 / 22
47 Méthode par substitution (II) T (n) = 2T ( n/2 ) + n cn log n On vérie que la formule tient pour T (2) et T (3) Margaux Nattaf 12 / 22
48 Méthode par substitution (II) T (n) = 2T ( n/2 ) + n cn log n On vérie que la formule tient pour T (2) et T (3) T (2) = 2T ( 2/2 ) + 2 Margaux Nattaf 12 / 22
49 Méthode par substitution (II) T (n) = 2T ( n/2 ) + n cn log n On vérie que la formule tient pour T (2) et T (3) T (2) = 2T ( 2/2 ) + 2 T (2) = 2T (1) + 2 Margaux Nattaf 12 / 22
50 Méthode par substitution (II) T (n) = 2T ( n/2 ) + n cn log n On vérie que la formule tient pour T (2) et T (3) T (2) = 2T ( 2/2 ) + 2 T (2) = 2T (1) + 2 T (2) = = 1 2c log 2 = 2c Margaux Nattaf 12 / 22
51 Méthode par substitution (II) T (n) = 2T ( n/2 ) + n cn log n On vérie que la formule tient pour T (2) et T (3) T (2) = 2T ( 2/2 ) + 2 T (2) = 2T (1) + 2 T (2) = = 1 2c log 2 = 2c T (2) = 1 2c log 2 = 2c Margaux Nattaf 12 / 22
52 Méthode par substitution (II) T (n) = 2T ( n/2 ) + n cn log n On vérie que la formule tient pour T (2) et T (3) T (2) = 2T ( 2/2 ) + 2 T (2) = 2T (1) + 2 T (2) = = 1 2c log 2 = 2c T (2) = 1 2c log 2 = 2c On fait la même chose pour T (3)... Margaux Nattaf 12 / 22
53 Méthode par substitution (II) T (n) = 2T ( n/2 ) + n cn log n On vérie que la formule tient pour T (2) et T (3) T (2) = 2T ( 2/2 ) + 2 T (2) = 2T (1) + 2 T (2) = = 1 2c log 2 = 2c T (2) = 1 2c log 2 = 2c On fait la même chose pour T (3) et on obtient que c doit être 2. Margaux Nattaf 12 / 22
54 Méthode par substitution (III) T (n) = 2T ( n/2 ) + n cn log n On suppose maintenant que c'est vrai pour T ( n/2 ) T ( n/2 ) c n/2 log n/2 Margaux Nattaf 13 / 22
55 Méthode par substitution (III) T (n) = 2T ( n/2 ) + n cn log n On suppose maintenant que c'est vrai pour T ( n/2 ) T ( n/2 ) c n/2 log n/2 On substitue dans l'expression T (n) = 2T ( n/2 ) + n Margaux Nattaf 13 / 22
56 Méthode par substitution (III) T (n) = 2T ( n/2 ) + n cn log n On suppose maintenant que c'est vrai pour T ( n/2 ) On substitue dans l'expression T ( n/2 ) c n/2 log n/2 T (n) = 2T ( n/2 ) + n 2c n log( n ) n Margaux Nattaf 13 / 22
57 Méthode par substitution (III) T (n) = 2T ( n/2 ) + n cn log n On suppose maintenant que c'est vrai pour T ( n/2 ) T ( n/2 ) c n/2 log n/2 On substitue dans l'expression T (n) = 2T ( n/2 ) + n 2c n log( n ) n cn log(n/2) + n Margaux Nattaf 13 / 22
58 Méthode par substitution (III) T (n) = 2T ( n/2 ) + n cn log n On suppose maintenant que c'est vrai pour T ( n/2 ) T ( n/2 ) c n/2 log n/2 On substitue dans l'expression T (n) = 2T ( n/2 ) + n 2c n log( n ) n cn log(n/2) + n cn log n cn log 2 + n Margaux Nattaf 13 / 22
59 Méthode par substitution (III) T (n) = 2T ( n/2 ) + n cn log n On suppose maintenant que c'est vrai pour T ( n/2 ) T ( n/2 ) c n/2 log n/2 On substitue dans l'expression T (n) = 2T ( n/2 ) + n 2c n log( n ) n cn log(n/2) + n cn log n cn log 2 + n cn log n cn + n Margaux Nattaf 13 / 22
60 Méthode par substitution (III) T (n) = 2T ( n/2 ) + n cn log n On suppose maintenant que c'est vrai pour T ( n/2 ) T ( n/2 ) c n/2 log n/2 On substitue dans l'expression T (n) = 2T ( n/2 ) + n 2c n log( n ) n cn log(n/2) + n cn log n cn log 2 + n cn log n cn + n cn log n Margaux Nattaf 13 / 22
61 Méthode par substitution (III) T (n) = 2T ( n/2 ) + n cn log n On suppose maintenant que c'est vrai pour T ( n/2 ) T ( n/2 ) c n/2 log n/2 On substitue dans l'expression T (n) = 2T ( n/2 ) + n 2c n log( n ) n cn log(n/2) + n cn log n cn log 2 + n cn log n cn + n cn log n A condition que c 1 (on prendra c 2, à cause de T (2) et T (3)) Margaux Nattaf 13 / 22
62 Méthode générale Pour les récurrence de la forme T (n) = at (n/b) + f (n) avec a 1 et b > 1 Margaux Nattaf 14 / 22
63 Méthode générale Pour les récurrence de la forme T (n) = at (n/b) + f (n) avec a 1 et b > 1 L'algorithme découpe la donnée en a sous-problèmes de taille n/b et les résout récursivement La fonction f représente le coût de division et de fusion du problème. Margaux Nattaf 14 / 22
64 Méthode générale Pour les récurrence de la forme T (n) = at (n/b) + f (n) avec a 1 et b > 1 L'algorithme découpe la donnée en a sous-problèmes de taille n/b et les résout récursivement La fonction f représente le coût de division et de fusion du problème. Exemple pour le tri fusion : a = 2, b = 2 et f (n) = Θ(n) Margaux Nattaf 14 / 22
65 Méthode générale Pour les récurrence de la forme T (n) = at (n/b) + f (n) avec a 1 et b > 1 L'algorithme découpe la donnée en a sous-problèmes de taille n/b et les résout récursivement La fonction f représente le coût de division et de fusion du problème. Exemple pour le tri fusion : a = 2, b = 2 et f (n) = Θ(n) On peut omettre ici les parties entières ( n/b ou n/b ) Margaux Nattaf 14 / 22
66 Méthode générale Pour les récurrence de la forme T (n) = at (n/b) + f (n) avec a 1 et b > 1 L'algorithme découpe la donnée en a sous-problèmes de taille n/b et les résout récursivement La fonction f représente le coût de division et de fusion du problème. Exemple pour le tri fusion : a = 2, b = 2 et f (n) = Θ(n) On peut omettre ici les parties entières ( n/b ou n/b ) Il existe un théorème pour identié la complexité : le théorème maître Margaux Nattaf 14 / 22
67 Théorème maître (général) - version simpliée On ne considère que les récurrences T (n) = at (n/b) + O(n d ) avec a 1, b > 1, d 0 Margaux Nattaf 15 / 22
68 Théorème maître (général) - version simpliée On ne considère que les récurrences T (n) = at (n/b) + O(n d ) avec a 1, b > 1, d 0 1 Si d > log b a, T (n) = Θ(n d ) 2 Si d = log b a, T (n) = Θ(n d log n) 3 Si d < log b a, T (n) = Θ(n log b a ) Margaux Nattaf 15 / 22
69 Théorème maître (général) - version simpliée On ne considère que les récurrences T (n) = at (n/b) + O(n d ) avec a 1, b > 1, d 0 1 Si d > log b a, T (n) = Θ(n d ) 2 Si d = log b a, T (n) = Θ(n d log n) 3 Si d < log b a, T (n) = Θ(n log b a ) Tri fusion : T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 Margaux Nattaf 15 / 22
70 Théorème maître (général) - version simpliée On ne considère que les récurrences T (n) = at (n/b) + O(n d ) avec a 1, b > 1, d 0 1 Si d > log b a, T (n) = Θ(n d ) 2 Si d = log b a, T (n) = Θ(n d log n) 3 Si d < log b a, T (n) = Θ(n log b a ) Tri fusion : T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 a = 2, Margaux Nattaf 15 / 22
71 Théorème maître (général) - version simpliée On ne considère que les récurrences T (n) = at (n/b) + O(n d ) avec a 1, b > 1, d 0 1 Si d > log b a, T (n) = Θ(n d ) 2 Si d = log b a, T (n) = Θ(n d log n) 3 Si d < log b a, T (n) = Θ(n log b a ) Tri fusion : T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 a = 2, b = 2, Margaux Nattaf 15 / 22
72 Théorème maître (général) - version simpliée On ne considère que les récurrences T (n) = at (n/b) + O(n d ) avec a 1, b > 1, d 0 1 Si d > log b a, T (n) = Θ(n d ) 2 Si d = log b a, T (n) = Θ(n d log n) 3 Si d < log b a, T (n) = Θ(n log b a ) Tri fusion : T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 a = 2, b = 2, d = 1, Margaux Nattaf 15 / 22
73 Théorème maître (général) - version simpliée On ne considère que les récurrences T (n) = at (n/b) + O(n d ) avec a 1, b > 1, d 0 1 Si d > log b a, T (n) = Θ(n d ) 2 Si d = log b a, T (n) = Θ(n d log n) 3 Si d < log b a, T (n) = Θ(n log b a ) Tri fusion : T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 a = 2, b = 2, d = 1, log 2 2 = 1 = d Margaux Nattaf 15 / 22
74 Théorème maître (général) - version simpliée On ne considère que les récurrences T (n) = at (n/b) + O(n d ) avec a 1, b > 1, d 0 1 Si d > log b a, T (n) = Θ(n d ) 2 Si d = log b a, T (n) = Θ(n d log n) 3 Si d < log b a, T (n) = Θ(n log b a ) Tri fusion : T (n) = { Θ(1) si n = 1 2T (n/2) + Θ(n) si n > 1 a = 2, b = 2, d = 1, log 2 2 = 1 = d On est donc dans le cas 2 et la complexité en Θ(n log n) Margaux Nattaf 15 / 22
75 La taille de la donnée La taille des données va dépendre de leur codage ; Margaux Nattaf 16 / 22
76 La taille de la donnée La taille des données va dépendre de leur codage ; On choisit comme taille la ou les dimensions les plus signicatives ; Margaux Nattaf 16 / 22
77 La taille de la donnée La taille des données va dépendre de leur codage ; On choisit comme taille la ou les dimensions les plus signicatives ; Exemple En fonction du problème, les entrées et leur taille peuvent être : Margaux Nattaf 16 / 22
78 La taille de la donnée La taille des données va dépendre de leur codage ; On choisit comme taille la ou les dimensions les plus signicatives ; Exemple En fonction du problème, les entrées et leur taille peuvent être : des éléments : le nombre d'éléments ; Margaux Nattaf 16 / 22
79 La taille de la donnée La taille des données va dépendre de leur codage ; On choisit comme taille la ou les dimensions les plus signicatives ; Exemple En fonction du problème, les entrées et leur taille peuvent être : des éléments : le nombre d'éléments ; des nombres : nombre de bits nécessaires à leur représentation (log 2 (n)) ; Margaux Nattaf 16 / 22
80 La taille de la donnée La taille des données va dépendre de leur codage ; On choisit comme taille la ou les dimensions les plus signicatives ; Exemple En fonction du problème, les entrées et leur taille peuvent être : des éléments : le nombre d'éléments ; des nombres : nombre de bits nécessaires à leur représentation (log 2 (n)) ; des matrices : taille m n max(m, n), m.n, m + n ; Margaux Nattaf 16 / 22
81 La taille de la donnée La taille des données va dépendre de leur codage ; On choisit comme taille la ou les dimensions les plus signicatives ; Exemple En fonction du problème, les entrées et leur taille peuvent être : des éléments : le nombre d'éléments ; des nombres : nombre de bits nécessaires à leur représentation (log 2 (n)) ; des matrices : taille m n max(m, n), m.n, m + n ; des graphes : nombre de sommets, nombre d'arcs, produit des deux ; Margaux Nattaf 16 / 22
82 La taille de la donnée La taille des données va dépendre de leur codage ; On choisit comme taille la ou les dimensions les plus signicatives ; Exemple En fonction du problème, les entrées et leur taille peuvent être : des éléments : le nombre d'éléments ; des nombres : nombre de bits nécessaires à leur représentation (log 2 (n)) ; des matrices : taille m n max(m, n), m.n, m + n ; des graphes : nombre de sommets, nombre d'arcs, produit des deux ; des tableaux : (ou listes) nombre de cases, d'éléments ; Margaux Nattaf 16 / 22
83 La taille de la donnée La taille des données va dépendre de leur codage ; On choisit comme taille la ou les dimensions les plus signicatives ; Exemple En fonction du problème, les entrées et leur taille peuvent être : des éléments : le nombre d'éléments ; des nombres : nombre de bits nécessaires à leur représentation (log 2 (n)) ; des matrices : taille m n max(m, n), m.n, m + n ; des graphes : nombre de sommets, nombre d'arcs, produit des deux ; des tableaux : (ou listes) nombre de cases, d'éléments ; des mots : leur longueur. Margaux Nattaf 16 / 22
84 Vocabulaire Un algorithme est dit : Margaux Nattaf 17 / 22
85 Vocabulaire Un algorithme est dit : en temps constant si sa complexité (dans le pire des cas) est bornée par une constante Margaux Nattaf 17 / 22
86 Vocabulaire Un algorithme est dit : en temps constant si sa complexité (dans le pire des cas) est bornée par une constante linéaire (resp. linéairement borné) si sa complexité (dans le pire des cas) est Θ(n) (resp. O(n)) Margaux Nattaf 17 / 22
87 Vocabulaire Un algorithme est dit : en temps constant si sa complexité (dans le pire des cas) est bornée par une constante linéaire (resp. linéairement borné) si sa complexité (dans le pire des cas) est Θ(n) (resp. O(n)) quadratique (resp. au plus quadratique) si sa complexité (dans le pire des cas) est Θ(n 2 ) (resp. O(n 2 )) Margaux Nattaf 17 / 22
88 Vocabulaire Un algorithme est dit : en temps constant si sa complexité (dans le pire des cas) est bornée par une constante linéaire (resp. linéairement borné) si sa complexité (dans le pire des cas) est Θ(n) (resp. O(n)) quadratique (resp. au plus quadratique) si sa complexité (dans le pire des cas) est Θ(n 2 ) (resp. O(n 2 )) polynômial ou polynômialement borné, si sa complexité (dans le pire des cas) est en O(n p ) pour un certain p > 0 (Q : n log n?) Margaux Nattaf 17 / 22
89 Vocabulaire Un algorithme est dit : en temps constant si sa complexité (dans le pire des cas) est bornée par une constante linéaire (resp. linéairement borné) si sa complexité (dans le pire des cas) est Θ(n) (resp. O(n)) quadratique (resp. au plus quadratique) si sa complexité (dans le pire des cas) est Θ(n 2 ) (resp. O(n 2 )) polynômial ou polynômialement borné, si sa complexité (dans le pire des cas) est en O(n p ) pour un certain p > 0 (Q : n log n?) (au plus) exponentiel si elle est en O(2 np ) pour un certain p > 0 Margaux Nattaf 17 / 22
90 Hiérarchie Pour faire un choix éclairé entre plusieurs algorithmes, il faut être capable de situer leur complexité ; Margaux Nattaf 18 / 22
91 Hiérarchie Pour faire un choix éclairé entre plusieurs algorithmes, il faut être capable de situer leur complexité ; On fait une première distinction entre les deux classes suivantes : Margaux Nattaf 18 / 22
92 Hiérarchie Pour faire un choix éclairé entre plusieurs algorithmes, il faut être capable de situer leur complexité ; On fait une première distinction entre les deux classes suivantes : 1 les algorithmes dits polynomiaux, dont la complexité est en O(n k ) pour un certain k ; Margaux Nattaf 18 / 22
93 Hiérarchie Pour faire un choix éclairé entre plusieurs algorithmes, il faut être capable de situer leur complexité ; On fait une première distinction entre les deux classes suivantes : 1 les algorithmes dits polynomiaux, dont la complexité est en O(n k ) pour un certain k ; 2 les algorithmes dits exponentiels, dont la complexité ne peut pas être majorée par une fonction polynomiale ; Margaux Nattaf 18 / 22
94 Hiérarchie Pour faire un choix éclairé entre plusieurs algorithmes, il faut être capable de situer leur complexité ; On fait une première distinction entre les deux classes suivantes : 1 les algorithmes dits polynomiaux, dont la complexité est en O(n k ) pour un certain k ; 2 les algorithmes dits exponentiels, dont la complexité ne peut pas être majorée par une fonction polynomiale ; De même : Margaux Nattaf 18 / 22
95 Hiérarchie Pour faire un choix éclairé entre plusieurs algorithmes, il faut être capable de situer leur complexité ; On fait une première distinction entre les deux classes suivantes : 1 les algorithmes dits polynomiaux, dont la complexité est en O(n k ) pour un certain k ; 2 les algorithmes dits exponentiels, dont la complexité ne peut pas être majorée par une fonction polynomiale ; De même : 1 un problème de complexité polynomiale est considéré facile ; Margaux Nattaf 18 / 22
96 Hiérarchie Pour faire un choix éclairé entre plusieurs algorithmes, il faut être capable de situer leur complexité ; On fait une première distinction entre les deux classes suivantes : 1 les algorithmes dits polynomiaux, dont la complexité est en O(n k ) pour un certain k ; 2 les algorithmes dits exponentiels, dont la complexité ne peut pas être majorée par une fonction polynomiale ; De même : 1 un problème de complexité polynomiale est considéré facile ; 2 sinon (complexité non-polynomiale ou inconnue (!)) il est considéré dicile ; Margaux Nattaf 18 / 22
97 Hiérarchie Pour faire un choix éclairé entre plusieurs algorithmes, il faut être capable de situer leur complexité ; On fait une première distinction entre les deux classes suivantes : 1 les algorithmes dits polynomiaux, dont la complexité est en O(n k ) pour un certain k ; 2 les algorithmes dits exponentiels, dont la complexité ne peut pas être majorée par une fonction polynomiale ; De même : 1 un problème de complexité polynomiale est considéré facile ; 2 sinon (complexité non-polynomiale ou inconnue (!)) il est considéré dicile ; Margaux Nattaf 18 / 22
98 Hiérarchie De même : 1 un problème de complexité polynomiale est considéré facile ; 2 sinon (complexité non-polynomiale ou inconnue (!)) il est considéré dicile ; Attention! Margaux Nattaf 19 / 22
99 Hiérarchie De même : 1 un problème de complexité polynomiale est considéré facile ; 2 sinon (complexité non-polynomiale ou inconnue (!)) il est considéré dicile ; Attention! 1 Attention à la puissance du polynôme : n 5 30 ans si n = Margaux Nattaf 19 / 22
100 Hiérarchie De même : 1 un problème de complexité polynomiale est considéré facile ; 2 sinon (complexité non-polynomiale ou inconnue (!)) il est considéré dicile ; Attention! 1 Attention à la puissance du polynôme : n 5 30 ans si n = Un algorithme peut avoir un comportement mauvais dans le pire des cas mais être ecace en général (exemple : algorithme du simplexe) Margaux Nattaf 19 / 22
101 Hiérarchie De même : 1 un problème de complexité polynomiale est considéré facile ; 2 sinon (complexité non-polynomiale ou inconnue (!)) il est considéré dicile ; Attention! 1 Attention à la puissance du polynôme : n 5 30 ans si n = Un algorithme peut avoir un comportement mauvais dans le pire des cas mais être ecace en général (exemple : algorithme du simplexe) Mais quel est l'intérêt de la classication des problèmes? Margaux Nattaf 19 / 22
102 Sommations Linéarité n (ca k + b k ) = c n a k + n k=1 k=1 k=1 n n Θ(f (k)) = Θ( f (k)) k=1 k=1 b k Séries arithmétiques n k = n = 1 2 n(n + 1) = Θ(n2 ) k=1 Margaux Nattaf 20 / 22
103 Sommations Séries géométriques n x k = 1 + x + x x n = x n+1 1 k=0 x 1 Séries harmoniques n e nombre harmonique H n = n = 1 n k k=1 = ln n + O(1) Margaux Nattaf 21 / 22
ALGORITHMIQUE 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é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é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é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étailProgrammation linéaire
1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit
Plus en détailObjectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)
Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter
Plus en détailPolynômes à plusieurs variables. Résultant
Polynômes à plusieurs variables. Résultant Christophe Ritzenthaler 1 Relations coefficients-racines. Polynômes symétriques Issu de [MS] et de [Goz]. Soit A un anneau intègre. Définition 1.1. Soit a A \
Plus en détailChp. 4. Minimisation d une fonction d une variable
Chp. 4. Minimisation d une fonction d une variable Avertissement! Dans tout ce chapître, I désigne un intervalle de IR. 4.1 Fonctions convexes d une variable Définition 9 Une fonction ϕ, partout définie
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étailAlgorithmes de recherche
Algorithmes de recherche 1 Résolution de problèmes par recherche On représente un problème par un espace d'états (arbre/graphe). Chaque état est une conguration possible du problème. Résoudre le problème
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é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é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étailQuelques tests de primalité
Quelques tests de primalité J.-M. Couveignes (merci à T. Ezome et R. Lercier) Institut de Mathématiques de Bordeaux & INRIA Bordeaux Sud-Ouest Jean-Marc.Couveignes@u-bordeaux.fr École de printemps C2 Mars
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étailComparaison de fonctions Développements limités. Chapitre 10
PCSI - 4/5 www.ericreynaud.fr Chapitre Points importants 3 Questions de cours 6 Eercices corrigés Plan du cours 4 Eercices types 7 Devoir maison 5 Eercices Chap Et s il ne fallait retenir que si points?
Plus en détailOrdonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1
CHAPTER 1 Ordonnancement 1.1. Étude de cas Ordonnancement de tâches avec contraintes de précédences 1.1.1. Exemple : construction d'une maison. Exercice. On veut construire une maison, ce qui consiste
Plus en détailCCP PSI - 2010 Mathématiques 1 : un corrigé
CCP PSI - 00 Mathématiques : un corrigé Première partie. Définition d une structure euclidienne sur R n [X]... B est clairement symétrique et linéaire par rapport à sa seconde variable. De plus B(P, P
Plus en détailChapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme
Chapitre 3 Quelques fonctions usuelles 1 Fonctions logarithme et eponentielle 1.1 La fonction logarithme Définition 1.1 La fonction 7! 1/ est continue sur ]0, +1[. Elle admet donc des primitives sur cet
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étailCorrigé des TD 1 à 5
Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un
Plus en détailBaccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé
Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e
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étailAlgorithmes d'apprentissage
Algorithmes d'apprentissage 1 Agents qui apprennent à partir d'exemples La problématique : prise de décision automatisée à partir d'un ensemble d'exemples Diagnostic médical Réponse à une demande de prêt
Plus en détailTable des matières. I Mise à niveau 11. Préface
Table des matières Préface v I Mise à niveau 11 1 Bases du calcul commercial 13 1.1 Alphabet grec...................................... 13 1.2 Symboles mathématiques............................... 14 1.3
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étailRésolution de systèmes linéaires par des méthodes directes
Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.
Plus en détailDistribution Uniforme Probabilité de Laplace Dénombrements Les Paris. Chapitre 2 Le calcul des probabilités
Chapitre 2 Le calcul des probabilités Equiprobabilité et Distribution Uniforme Deux événements A et B sont dits équiprobables si P(A) = P(B) Si il y a équiprobabilité sur Ω, cad si tous les événements
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étailLa NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.
La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
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é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é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é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étailCalcul de développements de Puiseux et application au calcul du groupe de monodromie d'une courbe algébrique plane
Calcul de développements de Puiseux et application au calcul du groupe de monodromie d'une courbe algébrique plane Poteaux Adrien XLIM-DMI, UMR-CNRS 6172 Université de Limoges Soutenance de thèse 15 octobre
Plus en détailBaccalauréat ES Pondichéry 7 avril 2014 Corrigé
Baccalauréat ES Pondichéry 7 avril 204 Corrigé EXERCICE 4 points Commun à tous les candidats. Proposition fausse. La tangente T, passant par les points A et B d abscisses distinctes, a pour coefficient
Plus en détailCours Optimisation Partie Optimisation Combinatoire. Année scolaire 2008-2009. Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera.
Cours Optimisation Partie Optimisation Combinatoire 3ième année ISAE Année scolaire 2008-2009 Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera.fr Septembre 2008 Résumé Ce document couvre
Plus en détailDéveloppements limités. Notion de développement limité
MT12 - ch2 Page 1/8 Développements limités Dans tout ce chapitre, I désigne un intervalle de R non vide et non réduit à un point. I Notion de développement limité Dans tout ce paragraphe, a désigne un
Plus en détailChapitre VI - Méthodes de factorisation
Université Pierre et Marie Curie Cours de cryptographie MM067-2012/13 Alain Kraus Chapitre VI - Méthodes de factorisation Le problème de la factorisation des grands entiers est a priori très difficile.
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étailUniversité du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.
Université du Québec à Chicoutimi Département d informatique et de mathématique Plan de cours Titre : Élément de programmation Sigle : 8inf 119 Session : Automne 2001 Professeur : Patrice Guérin Local
Plus en détailProgrammation mathématique Discrète et Modèles Linéaires
Université Pierre et Marie Curie Master IAD Module PDML Programmation mathématique Discrète et Modèles Linéaires Pierre Fouilhoux pierre.fouilhoux@lip6.fr 29 septembre 2013 Table des matières I Programmation
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étailI. Polynômes de Tchebychev
Première épreuve CCP filière MP I. Polynômes de Tchebychev ( ) 1.a) Tout réel θ vérifie cos(nθ) = Re ((cos θ + i sin θ) n ) = Re Cn k (cos θ) n k i k (sin θ) k Or i k est réel quand k est pair et imaginaire
Plus en détailOptimisation Discrète
Prof F Eisenbrand EPFL - DISOPT Optimisation Discrète Adrian Bock Semestre de printemps 2011 Série 7 7 avril 2011 Exercice 1 i Considérer le programme linéaire max{c T x : Ax b} avec c R n, A R m n et
Plus en détailCapacité d un canal Second Théorème de Shannon. Théorie de l information 1/34
Capacité d un canal Second Théorème de Shannon Théorie de l information 1/34 Plan du cours 1. Canaux discrets sans mémoire, exemples ; 2. Capacité ; 3. Canaux symétriques ; 4. Codage de canal ; 5. Second
Plus en détailSection «Maturité fédérale» EXAMENS D'ADMISSION Session de février 2014 RÉCAPITULATIFS DES MATIÈRES EXAMINÉES. Formation visée
EXAMENS D'ADMISSION Admission RÉCAPITULATIFS DES MATIÈRES EXAMINÉES MATIÈRES Préparation en 3 ou 4 semestres Formation visée Préparation complète en 1 an 2 ème partiel (semestriel) Niveau Durée de l examen
Plus en détailContinuité et dérivabilité d une fonction
DERNIÈRE IMPRESSIN LE 7 novembre 014 à 10:3 Continuité et dérivabilité d une fonction Table des matières 1 Continuité d une fonction 1.1 Limite finie en un point.......................... 1. Continuité
Plus en détailExercices - Polynômes : corrigé. Opérations sur les polynômes
Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)
Plus en détailSites web éducatifs et ressources en mathématiques
Sites web éducatifs et ressources en mathématiques Exercices en ligne pour le primaire Calcul mental élémentaire : http://www.csaffluents.qc.ca/wlamen/tables-sous.html Problèmes de soustraction/addition
Plus en détailChapitre 6. Fonction réelle d une variable réelle
Chapitre 6 Fonction réelle d une variable réelle 6. Généralités et plan d étude Une application de I dans R est une correspondance entre les éléments de I et ceu de R telle que tout élément de I admette
Plus en détailCONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE. Cinquième épreuve d admissibilité STATISTIQUE. (durée : cinq heures)
CONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE Cinquième épreuve d admissibilité STATISTIQUE (durée : cinq heures) Une composition portant sur la statistique. SUJET Cette épreuve est composée d un
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étailProgrammation linéaire et Optimisation. Didier Smets
Programmation linéaire et Optimisation Didier Smets Chapitre 1 Un problème d optimisation linéaire en dimension 2 On considère le cas d un fabricant d automobiles qui propose deux modèles à la vente, des
Plus en détailDéroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009
Déroulement Algorithmes et structures de données Cours 1 et 2 Patrick Reuter http://www.labri.fr/~preuter/asd2009 CM mercredi de 8h00 à 9h00 (Amphi Bât. E, 3 ème étage) ED - Groupe 3 : mercredi, 10h30
Plus en détailMaster of Science en mathématiques 2015-2016
Remarques liminaires : 1/9 Ce master à 90 ECTS (3 semestres) permet 2 orientations distinctes : - Un master général en mathématiques - Un master qui permet de choisir des mineurs en finance, statistique
Plus en détailAnalyse des Systèmes Asservis
Analyse des Systèmes Asservis Après quelques rappels, nous verrons comment évaluer deux des caractéristiques principales d'un système asservi : Stabilité et Précision. Si ces caractéristiques ne sont pas
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étailPROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES
Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.
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étailRaisonnement par récurrence Suites numériques
Chapitre 1 Raisonnement par récurrence Suites numériques Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Raisonnement par récurrence. Limite finie ou infinie d une suite.
Plus en détailProgrammation C++ (débutant)/instructions for, while et do...while
Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de
Plus en détailCorrection TD algorithmique
Affectation Correction TD algorithmique Exercice 1 algo affect1b b 5 a b+1 b 2 Il vaut faire passer la notion de variable et la notion de stockage mémoire. Une variable n a donc pas d historique et à un
Plus en détailSuites numériques 4. 1 Autres recettes pour calculer les limites
Suites numériques 4 1 Autres recettes pour calculer les limites La propriété suivante permet de calculer certaines limites comme on verra dans les exemples qui suivent. Propriété 1. Si u n l et fx) est
Plus en détailLa Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1
La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La licence Mathématiques et Economie-MASS de l Université des Sciences Sociales de Toulouse propose sur les trois
Plus en détailDOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.
A1 Trouvez l entier positif n qui satisfait l équation suivante: Solution 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. En additionnant les termes du côté gauche de l équation en les mettant sur le même dénominateur
Plus en détailAlgèbre binaire et Circuits logiques (2007-2008)
Université Mohammed V Faculté des Sciences Département de Mathématiques et Informatique Filière : SMI Algèbre binaire et Circuits logiques (27-28) Prof. Abdelhakim El Imrani Plan. Algèbre de Boole 2. Circuits
Plus en détailInfo0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
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étailNombres premiers. Comment reconnaître un nombre premier? Mais...
Introduction Nombres premiers Nombres premiers Rutger Noot IRMA Université de Strasbourg et CNRS Le 19 janvier 2011 IREM Strasbourg Definition Un nombre premier est un entier naturel p > 1 ayant exactement
Plus en détailProgramme de la classe de première année MPSI
Objectifs Programme de la classe de première année MPSI I - Introduction à l analyse L objectif de cette partie est d amener les étudiants vers des problèmes effectifs d analyse élémentaire, d introduire
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étailAlgorithmique et Programmation Fonctionnelle
Algorithmique et Programmation Fonctionnelle RICM3 Cours 9 : Lambda-calcul Benjamin Wack Polytech 2014-2015 1 / 35 La dernière fois Typage Polymorphisme Inférence de type 2 / 35 Plan Contexte λ-termes
Plus en détailStatistiques Descriptives à une dimension
I. Introduction et Définitions 1. Introduction La statistique est une science qui a pour objectif de recueillir et de traiter les informations, souvent en très grand nombre. Elle regroupe l ensemble des
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étailÉVALUATION FORMATIVE. On considère le circuit électrique RC représenté ci-dessous où R et C sont des constantes strictement positives.
L G L G Prof. Éric J.M.DELHEZ ANALYSE MATHÉMATIQUE ÉALUATION FORMATIE Novembre 211 Ce test vous est proposé pour vous permettre de faire le point sur votre compréhension du cours d Analyse Mathématique.
Plus en détailJournées Télécom-UPS «Le numérique pour tous» David A. Madore. david.madore@enst.fr. 29 mai 2015
et et Journées Télécom-UPS «Le numérique pour tous» David A. Madore Télécom ParisTech david.madore@enst.fr 29 mai 2015 1/31 et 2/31 : définition Un réseau de R m est un sous-groupe (additif) discret L
Plus en détailEteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques :
MTH EN JEN 2013-2014 Elèves de seconde, première et terminale scientifiques : Lycée Michel Montaigne : HERITEL ôme T S POLLOZE Hélène 1 S SOK Sophie 1 S Eteindre Lycée Sud Médoc : ROSIO Gauthier 2 nd PELGE
Plus en détailProgrammes des classes préparatoires aux Grandes Ecoles
Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voie : Biologie, chimie, physique et sciences de la Terre (BCPST) Discipline : Mathématiques Seconde année Préambule Programme
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailAlgorithmes pour la planification de mouvements en robotique non-holonome
Algorithmes pour la planification de mouvements en robotique non-holonome Frédéric Jean Unité de Mathématiques Appliquées ENSTA Le 02 février 2006 Outline 1 2 3 Modélisation Géométrique d un Robot Robot
Plus en détailArithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot
Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,
Plus en détailGénération automatique de procédures numériques pour les fonctions D-finies
Marc MEZZAROBBA sous la direction de Bruno SALVY Génération automatique de procédures numériques pour les fonctions D-finies Rapport de stage de Master 2 Master parisien de recherche en informatique février-juillet
Plus en détailPlan du cours 2014-2015. Cours théoriques. 29 septembre 2014
numériques et Institut d Astrophysique et de Géophysique (Bât. B5c) Bureau 0/13 email:.@ulg.ac.be Tél.: 04-3669771 29 septembre 2014 Plan du cours 2014-2015 Cours théoriques 16-09-2014 numériques pour
Plus en détailLogiciel Libre Cours 3 Fondements: Génie Logiciel
Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
Plus en détailIntroduction a l'algorithmique des objets partages. Robert Cori. Antoine Petit. Lifac, ENS Cachan, 94235 Cachan Cedex. Resume
Introduction a l'algorithmique des objets partages Bernadette Charron{Bost Robert Cori Lix, Ecole Polytechnique, 91128 Palaiseau Cedex, France, charron@lix.polytechnique.fr cori@lix.polytechnique.fr Antoine
Plus en détailaux différences est appelé équation aux différences d ordre n en forme normale.
MODÉLISATION ET SIMULATION EQUATIONS AUX DIFFÉRENCES (I/II) 1. Rappels théoriques : résolution d équations aux différences 1.1. Équations aux différences. Définition. Soit x k = x(k) X l état scalaire
Plus en détailMéthodes de quadrature. Polytech Paris-UPMC. - p. 1/48
Méthodes de Polytech Paris-UPMC - p. 1/48 Polynôme d interpolation de Preuve et polynôme de Calcul de l erreur d interpolation Étude de la formule d erreur Autres méthodes - p. 2/48 Polynôme d interpolation
Plus en détailCours 1 : Qu est-ce que la programmation?
1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
Plus en détailThéorie et codage de l information
Théorie et codage de l information Les codes linéaires - Chapitre 6 - Principe Définition d un code linéaire Soient p un nombre premier et s est un entier positif. Il existe un unique corps de taille q
Plus en détailUne nouvelle approche de détection de communautés dans les réseaux sociaux
UNIVERSITÉ DU QUÉBEC EN OUTAOUAIS Département d informatique et d ingénierie Une nouvelle approche de détection de communautés dans les réseaux sociaux Mémoire (INF 6021) pour l obtention du grade de Maîtrise
Plus en détail2. RAPPEL DES TECHNIQUES DE CALCUL DANS R
2. RAPPEL DES TECHNIQUES DE CALCUL DANS R Dans la mesure où les résultats de ce chapitre devraient normalement être bien connus, il n'est rappelé que les formules les plus intéressantes; les justications
Plus en détailD'UN THÉORÈME NOUVEAU
DÉMONSTRATION D'UN THÉORÈME NOUVEAU CONCERNANT LES NOMBRES PREMIERS 1. (Nouveaux Mémoires de l'académie royale des Sciences et Belles-Lettres de Berlin, année 1771.) 1. Je viens de trouver, dans un excellent
Plus en détailLeçon 01 Exercices d'entraînement
Leçon 01 Exercices d'entraînement Exercice 1 Etudier la convergence des suites ci-dessous définies par leur terme général: 1)u n = 2n3-5n + 1 n 2 + 3 2)u n = 2n2-7n - 5 -n 5-1 4)u n = lnn2 n+1 5)u n =
Plus en détailCours d Algorithmique et de Langage C 2005 - v 3.0
Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU cordeau@onera.fr Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris
Plus en détailLicence 2 Mathématiques- Semestre 3 Introduction aux mathématiques
Licence 2 Mathématiques- Semestre 3 Introduction aux mathématiques financières Année universitaire 2010-11 1 Version Septembre 2010 1 Responsable du cours: Marie-Amélie Morlais 2 0.1 Plan sommaire du cours
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étailFonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre
IUFM du Limousin 2009-10 PLC1 Mathématiques S. Vinatier Rappels de cours Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre 1 Fonctions de plusieurs variables
Plus en détailCryptographie et fonctions à sens unique
Cryptographie et fonctions à sens unique Pierre Rouchon Centre Automatique et Systèmes Mines ParisTech pierre.rouchon@mines-paristech.fr Octobre 2012 P.Rouchon (Mines ParisTech) Cryptographie et fonctions
Plus en détail