M1 MEEF Second Degré Maths option Info
|
|
- Élise Gilbert
- il y a 6 ans
- Total affichages :
Transcription
1 M1 MEEF Second Degré Maths option Info Algorithmes de tri Benjamin Wack UFR IM2AG, Université Grenoble Alpes mars / 28
2 Plan Pourquoi trier Algorithmes simples Complexité du problème Tri rapide Des tris linéaires 2 / 28
3 Pourquoi trier Plan Pourquoi trier Algorithmes simples Complexité du problème Tri rapide Des tris linéaires 3 / 28
4 Pourquoi trier Exemple fondamental en informatique Notion d algorithme Un problème, de multiples algorithmes Certains naturellement itératifs, d autres fondamentalement récursifs Pose même la question des primitives autorisées 4 / 28
5 Pourquoi trier Exemple fondamental en informatique Notion d algorithme Un problème, de multiples algorithmes Certains naturellement itératifs, d autres fondamentalement récursifs Pose même la question des primitives autorisées Méthodes de résolution Analyse descendante Diviser pour régner Randomisation 4 / 28
6 Pourquoi trier Exemple fondamental en informatique Notion d algorithme Un problème, de multiples algorithmes Certains naturellement itératifs, d autres fondamentalement récursifs Pose même la question des primitives autorisées Méthodes de résolution Analyse descendante Diviser pour régner Randomisation Comparaison d algorithmes Diverses caractéristiques de complexité Mais aussi d autres critères pour choisir tel ou tel algorithme 4 / 28
7 Pourquoi trier Applications Pour ordonner des valeurs bien entendu, mais surtout comme prétraitement pour résoudre efficacement plusieurs autres problèmes : Recherche dichotomique Détection de doublons Comparaison et opérations efficaces sur des ensembles Statistiques d ordre (médiane, quartiles...) Problèmes de graphes (arbre couvrant) et plus généralement d optimisation Géométrie algorithmique 5 / 28
8 Pourquoi trier Applications Pour ordonner des valeurs bien entendu, mais surtout comme prétraitement pour résoudre efficacement plusieurs autres problèmes : Recherche dichotomique Détection de doublons Comparaison et opérations efficaces sur des ensembles Statistiques d ordre (médiane, quartiles...) Problèmes de graphes (arbre couvrant) et plus généralement d optimisation Géométrie algorithmique Knuth (en 1973) affirme qu un ordinateur passe 25% de son temps à trier : car c est souvent utile car on trie parfois alors que ce n est pas indispensable car les tris sont parfois implémentés de façon non optimale... 5 / 28
9 Pourquoi trier Caractéristiques des tris Tri stable Dans le cas où plusieurs éléments sont considérés comme égaux pour le tri, leur ordre initial dans le tableau est préservé. 6 / 28
10 Pourquoi trier Caractéristiques des tris Tri stable Dans le cas où plusieurs éléments sont considérés comme égaux pour le tri, leur ordre initial dans le tableau est préservé. Tri en place L algorithme de tri utilise un espace mémoire constant en plus du tableau où sont stockées initialement les données. 6 / 28
11 Pourquoi trier Caractéristiques des tris Tri stable Dans le cas où plusieurs éléments sont considérés comme égaux pour le tri, leur ordre initial dans le tableau est préservé. Tri en place L algorithme de tri utilise un espace mémoire constant en plus du tableau où sont stockées initialement les données. Mais aussi : cache-friendly capacité à trier des données trop grosses pour la mémoire... 6 / 28
12 Algorithmes simples Plan Pourquoi trier Algorithmes simples Complexité du problème Tri rapide Des tris linéaires 7 / 28
13 Algorithmes simples Tri par sélection Analyse descendante : pour savoir trier, il suffit d extraire le minimum de recommencer avec le reste 8 / 28
14 Algorithmes simples Tri par sélection Analyse descendante : pour savoir trier, il suffit d extraire le minimum de recommencer avec le reste def tri_min(t): for i,ti in enumerate(t): imin = i for j in range(i+1,len(t)): if t[j] < t[imin] : imin = j t[i],t[imin] = t[imin],t[i] 8 / 28
15 Algorithmes simples Caractéristiques Complexité toujours en n(n+1) 2 Stable si la comparaison t[j] < t[imin] est stricte En place 9 / 28
16 Algorithmes simples Caractéristiques Complexité toujours en n(n+1) 2 Stable si la comparaison t[j] < t[imin] est stricte En place S écrit aussi bien en récursif def tri_min_rec(t, i): if i < len(t): imin = indice_du_min(t,i) t[i],t[imin] = t[imin],t[i] tri_min_rec(t, i+1) def indice_du_min(t,i): if i == len(t) - 1: return i else: imin = indice_du_min(t,i+1) if t[i] < t[imin]: return i else: return imin 9 / 28
17 Algorithmes simples Tri par insertion Programmation par contrat : à l itération i, la portion t[:i] sera triée. une itération consiste donc à insérer t[i] dans t[:i] 10 / 28
18 Algorithmes simples Tri par insertion Programmation par contrat : à l itération i, la portion t[:i] sera triée. une itération consiste donc à insérer t[i] dans t[:i] def tri_insertion(t): for i,ti in enumerate(t): j = i while j>0 and t[j-1] > ti : t[j] = t[j-1] j = j-1 t[j] = ti 10 / 28
19 Algorithmes simples Caractéristiques Complexité au pire en n(n+1) 2 mais au mieux en n Stable si la comparaison t[j-1] > t[j] est stricte En place Efficace sur les tableaux «presque triés» Efficace sur les petits tableaux (bonnes constantes) 11 / 28
20 Complexité du problème Plan Pourquoi trier Algorithmes simples Complexité du problème Tri rapide Des tris linéaires 12 / 28
21 Complexité du problème Rappels Complexité d un problème La complexité d un problème est la complexité du meilleur algorithme qui résoud ce problème. 13 / 28
22 Complexité du problème Rappels Complexité d un problème La complexité d un problème est la complexité du meilleur algorithme qui résoud ce problème. Mesure de coût Un algorithme de tri peut notamment : comparer des éléments entre eux déplacer des éléments (affectation) travailler sur les indices des tableaux 13 / 28
23 Complexité du problème Rappels Complexité d un problème La complexité d un problème est la complexité du meilleur algorithme qui résoud ce problème. Mesure de coût Un algorithme de tri peut notamment : comparer des éléments entre eux déplacer des éléments (affectation) travailler sur les indices des tableaux (les indices sont de taille bornée) 13 / 28
24 Complexité du problème Rappels Complexité d un problème La complexité d un problème est la complexité du meilleur algorithme qui résoud ce problème. Mesure de coût Un algorithme de tri peut notamment : comparer des éléments entre eux déplacer des éléments (affectation) (peuvent se faire en temps constant si on manipule des références) travailler sur les indices des tableaux (les indices sont de taille bornée) 13 / 28
25 Complexité du problème Rappels Complexité d un problème La complexité d un problème est la complexité du meilleur algorithme qui résoud ce problème. Mesure de coût Un algorithme de tri peut notamment : comparer des éléments entre eux (les éléments peuvent être longs à comparer si ce ne sont pas des données atomiques) déplacer des éléments (affectation) (peuvent se faire en temps constant si on manipule des références) travailler sur les indices des tableaux (les indices sont de taille bornée) 13 / 28
26 Complexité du problème Rappels Complexité d un problème La complexité d un problème est la complexité du meilleur algorithme qui résoud ce problème. Mesure de coût Un algorithme de tri peut notamment : comparer des éléments entre eux (les éléments peuvent être longs à comparer si ce ne sont pas des données atomiques) déplacer des éléments (affectation) (peuvent se faire en temps constant si on manipule des références) travailler sur les indices des tableaux (les indices sont de taille bornée) On comptera les comparaisons entre éléments à trier. 13 / 28
27 Complexité du problème Complexité du problème de tri : borne inférieure On considère l arbre de décision d un algorithme de tri donné. t1 < t2 t1 < t3 t2 < t3 3,2,1 2,1,3 3,1,2 1,2,3 14 / 28
28 Complexité du problème Complexité du problème de tri : borne inférieure On considère l arbre de décision d un algorithme de tri donné. t1 < t2 t1 < t3 t2 < t3 3,2,1 2,1,3 3,1,2 1,2,3 Si l algorithme a un coût au pire de k comparaisons, alors la hauteur de l arbre est k. Il dispose donc au maximum de 2 k feuilles. 14 / 28
29 Complexité du problème Complexité du problème de tri : borne inférieure On considère l arbre de décision d un algorithme de tri donné. t1 < t2 t1 < t3 t2 < t3 3,2,1 2,1,3 3,1,2 1,2,3 Si l algorithme a un coût au pire de k comparaisons, alors la hauteur de l arbre est k. Il dispose donc au maximum de 2 k feuilles. Chaque feuille correspond à un ordre produit par le tri. Pour n éléments à trier, tout algorithme doit être capable de distinguer n! permutations. 14 / 28
30 Complexité du problème Complexité du problème de tri : borne inférieure On considère l arbre de décision d un algorithme de tri donné. t1 < t2 t1 < t3 t2 < t3 3,2,1 2,1,3 3,1,2 1,2,3 Si l algorithme a un coût au pire de k comparaisons, alors la hauteur de l arbre est k. Il dispose donc au maximum de 2 k feuilles. Chaque feuille correspond à un ordre produit par le tri. Pour n éléments à trier, tout algorithme doit être capable de distinguer n! permutations. Par conséquent tout algorithme de tri de coût k doit vérifier : 2 k n! ( n e ) n (formule de Stirling) k n log n n log e n log n 14 / 28
31 Complexité du problème Réalisation de la borne inférieure : tri par fusion Principe du Diviser pour régner 15 / 28
32 Complexité du problème Réalisation de la borne inférieure : tri par fusion Principe du Diviser pour régner Pour trier un tableau t de taille n : Si n vaut 0 ou 1, rien à faire Sinon : Soit m l indice médian de t Trier (récursivement) t entre les indices 0 et m 1 Trier (récursivement) t entre les indices m et n 1 Interclasser les deux moitiés de tableau 15 / 28
33 Complexité du problème Réalisation de la borne inférieure : tri par fusion Principe du Diviser pour régner Pour trier un tableau t de taille n : Si n vaut 0 ou 1, rien à faire Sinon : Soit m l indice médian de t Trier (récursivement) t entre les indices 0 et m 1 Trier (récursivement) t entre les indices m et n 1 Interclasser les deux moitiés de tableau À propos de l interclassement Maintenir deux indices i et j parcourant respectivement 0..m 1 et m..n 1 Placer dans un tableau auxiliaire le minimum de t[i] et t[j] Incrémenter l indice correspondant D où un coût linéaire 15 / 28
34 Complexité du problème Complexité Coût du tri par fusion C(n) = 2C(n/2) + n Par application du Master Theorem : log 2 2 = 1 d où C(n) = O(n log n) 16 / 28
35 Complexité du problème Complexité Coût du tri par fusion C(n) = 2C(n/2) + n Par application du Master Theorem : log 2 2 = 1 d où C(n) = O(n log n) Mais : Cet algorithme n est pas en place (tableau auxiliaire pour l interclassement) Constantes relativement élevées 16 / 28
36 Complexité du problème Récursif mais pas que Diviser pour régner induit naturellement une écriture récursive Mais icion peut complètement écrire l algorithme itérativement (ici pour n = 2 k ) : tab1 = [None]*len(tab) s = 1 while s < n: b, x, y = 0, 0, s for i in range(n): if (x < b + s and y < b + 2 * s and tab[x] < tab[y]) \ or (y == b + 2 * s): tab1[i] = tab[x] ; x = x + 1 else: tab1[i] = tab[y] ; y = y + 1 if x == b + s and y == b + 2 * s: b = b + 2 * s x, y = b, b + s for i in range(n): tab[i] = tab1[i] s = s * 2 17 / 28
37 Tri rapide Plan Pourquoi trier Algorithmes simples Complexité du problème Tri rapide Des tris linéaires 18 / 28
38 Tri rapide Le tri rapide aussi appelé QuickSort, Tri par segmentation... inventé par Tony Hoare en 1961 utilisé dans de nombreuses librairies comme tri «de référence» 19 / 28
39 Tri rapide Le tri rapide aussi appelé QuickSort, Tri par segmentation... inventé par Tony Hoare en 1961 utilisé dans de nombreuses librairies comme tri «de référence» Quelques caractéristiques fondamentalement récursif en place (pas besoin de tableau auxiliaire) non stable (les éléments «égaux» ne conservent pas leur ordre initial) 19 / 28
40 Tri rapide Principe général D A E C B F 20 / 28
41 Tri rapide Principe général D A E C B F 1. Choisir un élément : le pivot D A E C B F 20 / 28
42 Tri rapide Principe général D A E C B F 1. Choisir un élément : le pivot D A E C B F 2. Partitionner le tableau selon ce pivot : éléments inférieurs au pivot à gauche éléments supérieurs au pivot à droite A C B D F E 20 / 28
43 Tri rapide Principe général D A E C B F 1. Choisir un élément : le pivot D A E C B F 2. Partitionner le tableau selon ce pivot : éléments inférieurs au pivot à gauche éléments supérieurs au pivot à droite A C B D F E 3. Trier récursivement les deux sous-tableaux ainsi formés A B C D E F 20 / 28
44 Tri rapide Schéma de l algorithme TriSegmentation (E) Donnée-résultat Un ensemble E de n éléments comparables Effet de bord E est trié par ordre croissant if E pivot := Extrait (E) // retire l élément pivot de E (E 1, E 2) := Segmentation (E,pivot) // E 1 éléments plus petits que pivot // E 2 éléments plus grands que pivot Assemble ( TriSegmentation (E 1), pivot, TriSegmentation (E 2)) 21 / 28
45 Tri rapide Schéma de l algorithme TriSegmentation (E) Donnée-résultat Un ensemble E de n éléments comparables Effet de bord E est trié par ordre croissant if E pivot := Extrait (E) // retire l élément pivot de E (E 1, E 2) := Segmentation (E,pivot) // E 1 éléments plus petits que pivot // E 2 éléments plus grands que pivot Assemble ( TriSegmentation (E 1), pivot, TriSegmentation (E 2)) À instancier avec les contraintes suivantes : E est représenté dans un tableau Segmentation en place Après l appel à Extrait on ne touche plus au pivot 21 / 28
46 Tri rapide Conception récursive Les appels récursifs opéreront sur des sous-tableaux 2 paramètres en plus : les indices entre lesquels on travaille Reconstruction triviale : E 1 et E 2 sont triés et leurs éléments sont bien placés par rapport au pivot Cas de base : tableau de taille 0 ou 1 (déjà trié) 22 / 28
47 Tri rapide Conception récursive Les appels récursifs opéreront sur des sous-tableaux 2 paramètres en plus : les indices entre lesquels on travaille Reconstruction triviale : E 1 et E 2 sont triés et leurs éléments sont bien placés par rapport au pivot Cas de base : tableau de taille 0 ou 1 (déjà trié) TriSegmentation (T, g, d) Donnée-résultat Un tableau T d éléments comparables Effet de bord T est trié par ordre croissant entre les indices g et d if g < d pivot := T [g] Partition (T, g, d, pivot) TriSegmentation (T, g,?) TriSegmentation (T,?, d) 22 / 28
48 Tri rapide Conception récursive Les appels récursifs opéreront sur des sous-tableaux 2 paramètres en plus : les indices entre lesquels on travaille Reconstruction triviale : E 1 et E 2 sont triés et leurs éléments sont bien placés par rapport au pivot Cas de base : tableau de taille 0 ou 1 (déjà trié) TriSegmentation (T, g, d) Donnée-résultat Un tableau T d éléments comparables Effet de bord T est trié par ordre croissant entre les indices g et d if g < d pivot := T [g] i := Partition (T, g, d, pivot) TriSegmentation (T, g, i 1) TriSegmentation (T, i + 1, d) 22 / 28
49 Tri rapide La procédure Partition Partition (T, g, d) Donnée-résultat Un tableau T d éléments comparables Résultat : L indice i de pivot correctement placé dans le tableau Effet de bord Les éléments de T entre les indices : g et i 1 sont tous inférieurs à pivot. i + 1 et d sont tous supérieurs à pivot. 23 / 28
50 Tri rapide La procédure Partition Partition (T, g, d) Donnée-résultat Un tableau T d éléments comparables Résultat : L indice i de pivot correctement placé dans le tableau Effet de bord Les éléments de T entre les indices : g et i 1 sont tous inférieurs à pivot. i + 1 et d sont tous supérieurs à pivot. i = g while if else return i 23 / 28
51 Tri rapide La procédure Partition Partition (T, g, d) Donnée-résultat Un tableau T d éléments comparables Résultat : L indice i de pivot correctement placé dans le tableau Effet de bord Les éléments de T entre les indices : g et i 1 sont tous inférieurs à pivot. i + 1 et d sont tous supérieurs à pivot. i = g while if T [i + 1] pivot else return i 23 / 28
52 Tri rapide La procédure Partition Partition (T, g, d) Donnée-résultat Un tableau T d éléments comparables Résultat : L indice i de pivot correctement placé dans le tableau Effet de bord Les éléments de T entre les indices : g et i 1 sont tous inférieurs à pivot. i + 1 et d sont tous supérieurs à pivot. i = g while if T [i + 1] pivot i = i + 1 else return i 23 / 28
53 Tri rapide La procédure Partition Partition (T, g, d) Donnée-résultat Un tableau T d éléments comparables Résultat : L indice i de pivot correctement placé dans le tableau Effet de bord Les éléments de T entre les indices : g et i 1 sont tous inférieurs à pivot. i + 1 et d sont tous supérieurs à pivot. i = g while if T [i + 1] pivot i = i + 1 else Échanger T [d] et T [i + 1] d = d 1 return i 23 / 28
54 Tri rapide La procédure Partition Partition (T, g, d) Donnée-résultat Un tableau T d éléments comparables Résultat : L indice i de pivot correctement placé dans le tableau Effet de bord Les éléments de T entre les indices : g et i 1 sont tous inférieurs à pivot. i + 1 et d sont tous supérieurs à pivot. i = g while i < d if T [i + 1] pivot i = i + 1 else Échanger T [d] et T [i + 1] d = d 1 return i 23 / 28
55 Tri rapide La procédure Partition Partition (T, g, d) Donnée-résultat Un tableau T d éléments comparables Résultat : L indice i de pivot correctement placé dans le tableau Effet de bord Les éléments de T entre les indices : g et i 1 sont tous inférieurs à pivot. i + 1 et d sont tous supérieurs à pivot. i = g while i < d if T [i + 1] pivot i = i + 1 else Échanger T [d] et T [i + 1] d = d 1 Échanger T [g] et T [i] return i 23 / 28
56 Tri rapide Éléments de complexité Partition peut s écrire de diverses façons, toutes linéaires en d g. Évaluation des paramètres négligeable 24 / 28
57 Tri rapide Éléments de complexité Partition peut s écrire de diverses façons, toutes linéaires en d g. Évaluation des paramètres négligeable D où C TriSegmentation (d g) = C Partition (d g) +C TriSegmentation (i 1 g) +C TriSegmentation (d i 1) = O(d g) +C TriSegmentation (i 1 g) +C TriSegmentation (d i 1)... mais i est donné par Partition, donc dépend de la donnée. 24 / 28
58 Tri rapide Éléments de complexité Partition peut s écrire de diverses façons, toutes linéaires en d g. Évaluation des paramètres négligeable D où C TriSegmentation (d g) = C Partition (d g) +C TriSegmentation (i 1 g) +C TriSegmentation (d i 1) = O(d g) +C TriSegmentation (i 1 g) +C TriSegmentation (d i 1)... mais i est donné par Partition, donc dépend de la donnée. Intuitivement : l algorithme est efficace (resp. inefficace) quand le pivot est un élément médian (resp. extrême). Ce sont les mêmes équations que pour la hauteur moyenne d un ABR! D où un coût en moyenne de O(n log n). 24 / 28
59 Des tris linéaires Plan Pourquoi trier Algorithmes simples Complexité du problème Tri rapide Des tris linéaires 25 / 28
60 Des tris linéaires Tri par dénombrement Si on veut trier des entiers tous compris entre 0 et M 1 : occ = [0]*M for x in t: occ[x] = occ[x] + 1 i=0 for x in range(m): for j in range(occ[x]): t[i] = x i = i / 28
61 Des tris linéaires Tri par dénombrement Si on veut trier des entiers tous compris entre 0 et M 1 : occ = [0]*M for x in t: occ[x] = occ[x] + 1 i=0 for x in range(m): for j in range(occ[x]): t[i] = x i = i + 1 Linéaire si M = O(n) 26 / 28
62 Des tris linéaires Tri par paquets Si on sait que les n valeurs (entières ou flottantes par exemple) du tableau t à trier sont uniformément réparties dans un intervalle borné I : Découper l intervalle I en n sous-intervalles de même taille Prévoir un tableau de n ensembles d éléments initialement vides, correspondant chacun à un sous-intervalle 27 / 28
63 Des tris linéaires Tri par paquets Si on sait que les n valeurs (entières ou flottantes par exemple) du tableau t à trier sont uniformément réparties dans un intervalle borné I : Découper l intervalle I en n sous-intervalles de même taille Prévoir un tableau de n ensembles d éléments initialement vides, correspondant chacun à un sous-intervalle Parcourir le tableau t et stocker chaque élément dans l ensemble correspondant 27 / 28
64 Des tris linéaires Tri par paquets Si on sait que les n valeurs (entières ou flottantes par exemple) du tableau t à trier sont uniformément réparties dans un intervalle borné I : Découper l intervalle I en n sous-intervalles de même taille Prévoir un tableau de n ensembles d éléments initialement vides, correspondant chacun à un sous-intervalle Parcourir le tableau t et stocker chaque élément dans l ensemble correspondant Trier chaque sous-intervalle (un tri par insertion suffit). Reconstituer le tableau trié par concaténation des sous-intervalles 27 / 28
65 Des tris linéaires Tri par paquets Si on sait que les n valeurs (entières ou flottantes par exemple) du tableau t à trier sont uniformément réparties dans un intervalle borné I : Découper l intervalle I en n sous-intervalles de même taille Prévoir un tableau de n ensembles d éléments initialement vides, correspondant chacun à un sous-intervalle Parcourir le tableau t et stocker chaque élément dans l ensemble correspondant Trier chaque sous-intervalle (un tri par insertion suffit). Reconstituer le tableau trié par concaténation des sous-intervalles En moyenne, chaque sous-intervalle contient 1 élément (loi binomiale d espérance 1), donc son tri prend un temps constant. L algorithme est donc linéaire en n. 27 / 28
66 Des tris linéaires Où est le truc? On ne procède pas par comparaison entre éléments. Donc la borne inférieure calculée précédemment ne s applique pas. 28 / 28
67 Des tris linéaires Où est le truc? On ne procède pas par comparaison entre éléments. Donc la borne inférieure calculée précédemment ne s applique pas. Le gain de complexité observé s appuie sur une hypothèse supplémentaire à propos des données : valeurs pouvant servir d indices, nombre de valeurs borné distribution aléatoire particulière / 28
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é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étail1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Plus en détailArchitecture des Systèmes d Information Architecture des Systèmes d Information
Plan... Tableaux et tris I3 - Algorithmique et programmation 1 Rappels Nicol Delestre 2 Tableaux à n dimensions 3 Initiation aux tris Tableaux - v2.0.1 1 / 27 Tableaux - v2.0.1 2 / 27 Rappels : tableau
Plus en dé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étailAlgorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/??
Algorithmique I Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement
Plus en détailDéfinitions. Numéro à préciser. (Durée : )
Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.
Plus en dé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étailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailIntroduction à MATLAB R
Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d
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é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étail# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>
94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue
Plus en détailNouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires
Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Julien Jorge julien.jorge@univ-nantes.fr Laboratoire d Informatique de Nantes Atlantique,
Plus en détailExercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,
Plus en dé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é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étailAlgorithmique, Structures de données et langage C
UNIVERSITE PAUL SABATIER TOULOUSE III Algorithmique, Structures de données et langage C L3 IUP AISEM/ICM Janvier 2005 J.M. ENJALBERT Chapitre 1 Rappels et compléments de C 1.1 Structures Une structure
Plus en détailMISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES. Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES Maude Manouvrier La reproduction de ce document par
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é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é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étailAlgorithmes récursifs
Licence 1 MASS - Algorithmique et Calcul Formel S. Verel, M.-E. Voge www.i3s.unice.fr/ verel 23 mars 2007 Objectifs de la séance 3 écrire des algorithmes récursifs avec un seul test rechercher un élément
Plus en détailExclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011
Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr Université de Provence 9 février 2011 Arnaud Labourel (Université de Provence) Exclusion Mutuelle 9 février 2011 1 / 53 Contexte Epistémologique
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étailCours 7 : Utilisation de modules sous python
Cours 7 : Utilisation de modules sous python 2013/2014 Utilisation d un module Importer un module Exemple : le module random Importer un module Exemple : le module random Importer un module Un module est
Plus en détailCHAPITRE V. Recherche et tri
Cherchez et vous trouverez,... car qui cherche trouve. Matthieu 7 7-8 et Luc 11 9-10 CHAPITRE V Recherche et tri Objectif. Comprendre les techniques de base pour organiser des données ordonnées. Ce chapitre
Plus en détailCours de Probabilités et de Statistique
Cours de Probabilités et de Statistique Licence 1ère année 2007/2008 Nicolas Prioux Université Paris-Est Cours de Proba-Stat 2 L1.2 Science-Éco Chapitre Notions de théorie des ensembles 1 1.1 Ensembles
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étailLes arbres binaires de recherche
Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s
Plus en dé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étailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
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étailUtilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Plus en détailEnsimag 1ère année Algorithmique 1 Examen 2ième session 24 juin 2010. Algorithmique 1
Algorithmique 1 Durée : 2h Machines électroniques interdites Tous documents papiers autorisés Il est conseillé de traiter les deux parties dans l ordre du sujet. Veuillez respecter les notations introduites
Plus en détailProbabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12
Probabilités. I - Rappel : trois exemples. Exemple 1 : Dans une classe de 25 élèves, il y a 16 filles. Tous les élèves sont blonds ou bruns. Parmi les filles, 6 sont blondes. Parmi les garçons, 3 sont
Plus en détailPourquoi l apprentissage?
Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage
Plus en détailInitiation à LabView : Les exemples d applications :
Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple
Plus en détailLicence Sciences et Technologies Examen janvier 2010
Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.
Plus en détailImage d un intervalle par une fonction continue
DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction
Plus en dé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étailOrdonnancement temps réel
Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches
Plus en détailMABioVis. Bio-informatique et la
MABioVis Modèles et Algorithmes pour la Bio-informatique et la Visualisation Visite ENS Cachan 5 janvier 2011 MABioVis G GUY MELANÇON (PR UFR Maths Info / EPI GRAVITE) (là, maintenant) - MABioVis DAVID
Plus en détailL analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :
La vision nous permet de percevoir et d interpreter le monde qui nous entoure. La vision artificielle a pour but de reproduire certaines fonctionnalités de la vision humaine au travers de l analyse d images.
Plus en détailObjets Combinatoires élementaires
Objets Combinatoires élementaires 0-0 Permutations Arrangements Permutations pour un multi-ensemble mots sous-ensemble à k éléments (Problème du choix) Compositions LE2I 04 1 Permutations Supposons que
Plus en détailDécouverte de Python
Découverte de Python Python est un des langages informatiques au programme des concours à partir de la session 2015. Ce tutoriel vous permettra de vous mettre à peu près à niveau de ce qui a été fait en
Plus en détaildonnées en connaissance et en actions?
1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)
Plus en dé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étailAlgorithmique et structures de données I
Algorithmique et structures de données I Riadh Ben Messaoud Université 7 novembre à Carthage Faculté des Sciences Économiques et de Gestion de Nabeul 1ère année Licence Fondamentale IAG 1ère année Licence
Plus en détailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détail1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
Plus en détailBureau N301 (Nautile) benjamin@leroy-beaulieu.ch
Pre-MBA Statistics Seances #1 à #5 : Benjamin Leroy-Beaulieu Bureau N301 (Nautile) benjamin@leroy-beaulieu.ch Mise à niveau statistique Seance #1 : 11 octobre Dénombrement et calculs de sommes 2 QUESTIONS
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é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é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étailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailARBRES 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étailProgrammes des classes préparatoires aux Grandes Ecoles
Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voies : Mathématiques, physique et sciences de l'ingénieur (MPSI) Physique, chimie et sciences de l ingénieur (PCSI) Physique,
Plus en détailET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.
ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de
Plus en détailALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII
ALGORITHMIQUE II NOTION DE COMPLEXITE 1 2 Comment choisir entre différents algorithmes pour résoudre un même problème? Plusieurs critères de choix : Exactitude Simplicité Efficacité (but de ce chapitre)
Plus en détailCours d initiation à la programmation en C++ Johann Cuenin
Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................
Plus en détailTravaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Plus en détailCours Informatique Master STEP
Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions
Plus en détailExamen Médian - 1 heure 30
NF01 - Automne 2014 Examen Médian - 1 heure 30 Polycopié papier autorisé, autres documents interdits Calculatrices, téléphones, traducteurs et ordinateurs interdits! Utilisez trois copies séparées, une
Plus en détailNouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires
Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires Julien Jorge, Xavier Gandibleux Laboratoire d Informatique de Nantes Atlantique
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é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étailLes structures de données. Rajae El Ouazzani
Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l
Plus en dé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étailECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;
RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines
Plus en détailCours 1 : Introduction Ordinateurs - Langages de haut niveau - Application
Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un
Plus en détailCours d algorithmique pour la classe de 2nde
Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage
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étailCours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
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étailManuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2
éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........
Plus en détailI. Introduction aux fonctions : les fonctions standards
Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons
Plus en détailGroupe symétrique. Chapitre II. 1 Définitions et généralités
Chapitre II Groupe symétrique 1 Définitions et généralités Définition. Soient n et X l ensemble 1,..., n. On appelle permutation de X toute application bijective f : X X. On note S n l ensemble des permutations
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
Plus en détailCentre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :
Algorithmique et programmation : STRUCTURES DE DONNÉES A. Structure et enregistrement 1) Définition et rôle des structures de données en programmation 1.1) Définition : En informatique, une structure de
Plus en détailLMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Plus en détailÉquations non linéaires
Équations non linéaires Objectif : trouver les zéros de fonctions (ou systèmes) non linéaires, c-à-d les valeurs α R telles que f(α) = 0. y f(x) α 1 α 2 α 3 x Equations non lineaires p. 1/49 Exemples et
Plus en détailSommaire. BilanStat manuel de présentation et d utilisation Page 2
BilanStat-Audit Sommaire Présentation... 3 Chapitre 0 : Gestion des bases de données... 5 Chapitre 0 : Gestion des missions... 12 Chapitre 1 : Eléments généraux... 17 Chapitre 2 : Capitaux propres... 28
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étailAlgorithmes et mathématiques. 1. Premiers pas avec Python. Exo7. 1.1. Hello world!
Exo7 Algorithmes et mathématiques Vidéo partie 1. Premiers pas avec Python Vidéo partie 2. Ecriture des entiers Vidéo partie 3. Calculs de sinus, cosinus, tangente Vidéo partie 4. Les réels Vidéo partie
Plus en détailOrganigramme / Algorigramme Dossier élève 1 SI
Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué
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étailSOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique
SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique DOMAINE P3.C3.D1. Pratiquer une démarche scientifique et technologique, résoudre des
Plus en détailCoefficients binomiaux
Probabilités L2 Exercices Chapitre 2 Coefficients binomiaux 1 ( ) On appelle chemin une suite de segments de longueur 1, dirigés soit vers le haut, soit vers la droite 1 Dénombrer tous les chemins allant
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
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étailTP 2 Réseaux. Adresses IP, routage et sous-réseaux
TP 2 Réseaux Adresses IP, routage et sous-réseaux C. Pain-Barre INFO - IUT Aix-en-Provence version du 24/2/2 Adressage IP. Limites du nombre d adresses IP.. Adresses de réseaux valides Les adresses IP
Plus en détailCalcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.
1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le
Plus en détailCompression Compression par dictionnaires
Compression Compression par dictionnaires E. Jeandel Emmanuel.Jeandel at lif.univ-mrs.fr E. Jeandel, Lif CompressionCompression par dictionnaires 1/25 Compression par dictionnaire Principe : Avoir une
Plus en détailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
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étailProblèmes liés à la concurrence
ENS Cachan Problématique Difficile de gérer la concurrence : Pas toujours facile d avoir des fonctions réentrantes. Risque de race condition : ex : x :=x+1 x :=x+1 On voudrait des blocs d instructions
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étail