La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 1 Huitième journée Quelques algorithmes. 2 Définition Description des tâches pour que celles-ci soient aisément programmables Différent d’une méthode.

Présentations similaires


Présentation au sujet: "1 1 Huitième journée Quelques algorithmes. 2 Définition Description des tâches pour que celles-ci soient aisément programmables Différent d’une méthode."— Transcription de la présentation:

1 1 1 Huitième journée Quelques algorithmes

2 2 Définition Description des tâches pour que celles-ci soient aisément programmables Différent d’une méthode de résolution mathématique utilisant le raisonnement  doit être un calcul Procédure calculatoire (recette effective en temps fini) suffisamment détaillée pour permettre son implémentation par un développeur sans que celui-ci n’ait a faire de supposition sur le programme et son comportement. Description des tâches pour que celles-ci soient aisément programmables Différent d’une méthode de résolution mathématique utilisant le raisonnement  doit être un calcul Procédure calculatoire (recette effective en temps fini) suffisamment détaillée pour permettre son implémentation par un développeur sans que celui-ci n’ait a faire de supposition sur le programme et son comportement.

3 3 Problème numéro 1 Chercher si une valeur est présente dans un tableau Très utile Chercher si une valeur est présente dans un tableau Très utile

4 4 Recherche linéaire On parcourt le tableau en partant du premier élément, jusqu’au dernier si nécessaire. –On compare la valeur de la cellule avec la valeur cible –Si cet élément est la valeur cible, l’élément recherché a été trouvé Si l’élément recherché n’a pas été trouvé, il n’est pas dans le tableau On parcourt le tableau en partant du premier élément, jusqu’au dernier si nécessaire. –On compare la valeur de la cellule avec la valeur cible –Si cet élément est la valeur cible, l’élément recherché a été trouvé Si l’élément recherché n’a pas été trouvé, il n’est pas dans le tableau

5 5 Recherche dichotomique Présuppose que le tableau est trié. Tant que l’élément cible n’est pas trouvé et que le tableau n’est pas vide –On va directement au milieu du tableau. –On compare cet élément avec la cible. –Si celui-ci est différent mais plus petit que la cible, on continue avec la partie droite du tableau –Sinon si celui-ci est différent mais plus grand que la cible, on continue avec la partie gauche du table –Sinon l’élément cible est trouvé. Si le tableau est vide, la cible n’appartient pas au tableau Sinon il y appartient Présuppose que le tableau est trié. Tant que l’élément cible n’est pas trouvé et que le tableau n’est pas vide –On va directement au milieu du tableau. –On compare cet élément avec la cible. –Si celui-ci est différent mais plus petit que la cible, on continue avec la partie droite du tableau –Sinon si celui-ci est différent mais plus grand que la cible, on continue avec la partie gauche du table –Sinon l’élément cible est trouvé. Si le tableau est vide, la cible n’appartient pas au tableau Sinon il y appartient

6 6 Problème numéro 2 Trier un tableau –On a un tableau qui possède des valeurs dans le désordre –Comment les remettre en ordre dans le même tableau ou dans un tableau différent. Trier un tableau –On a un tableau qui possède des valeurs dans le désordre –Comment les remettre en ordre dans le même tableau ou dans un tableau différent.

7 7 Tri sélection Soit un tableau temporaire de taille égal au tableau à trier. On fait N fois où N est la taille du tableau à trier ( i.e. pour i=0 à N-1 ) –On cherche l’indice du plus petit élément, en parcourant tous les indices du tableau à trier, sauf ceux mémorisé dans le tableau temporaire –On le mémorise dans le tableau temporaire à la cellule d’indice i Pour chaque élément e du tableau temporaire, –on affiche la valeur contenu à l’indice e du tableau à trier. On peut les copier dans un nouveau tableau. Soit un tableau temporaire de taille égal au tableau à trier. On fait N fois où N est la taille du tableau à trier ( i.e. pour i=0 à N-1 ) –On cherche l’indice du plus petit élément, en parcourant tous les indices du tableau à trier, sauf ceux mémorisé dans le tableau temporaire –On le mémorise dans le tableau temporaire à la cellule d’indice i Pour chaque élément e du tableau temporaire, –on affiche la valeur contenu à l’indice e du tableau à trier. On peut les copier dans un nouveau tableau.

8 8 Tri par bulles Pour i parcourant 1 à N-1 (où N est la taille du tableau à trier) –Pour tout j parcourant 0 à N - i Si la valeur en j est plus grande que la valeur en j+1, inverser les deux valeurs Peut-être optimisée en s’arrêtant si aucune inversion n’a été faite après un passage complet de la boucle intérieur. Pour i parcourant 1 à N-1 (où N est la taille du tableau à trier) –Pour tout j parcourant 0 à N - i Si la valeur en j est plus grande que la valeur en j+1, inverser les deux valeurs Peut-être optimisée en s’arrêtant si aucune inversion n’a été faite après un passage complet de la boucle intérieur.

9 Algorithme d’Euclide 9 Sinon a b et b r Si r = 0 le PGCD est b Soit r, le reste de la division entière de a par b Si a < b, on échange a et b

10 Primitude Évaluer si n est premier Afficher la décomposition unique d’un nombre en nombre premier Pouvez calculer le nombre d’opération nécessaire ? Évaluer si n est premier Afficher la décomposition unique d’un nombre en nombre premier Pouvez calculer le nombre d’opération nécessaire ? 10

11 Trouver un nombre premier Problème pratique Essentiel pour la cryptographie Algorithme RSA Test de Fermat Test de Rabin-Miller Problème pratique Essentiel pour la cryptographie Algorithme RSA Test de Fermat Test de Rabin-Miller 11


Télécharger ppt "1 1 Huitième journée Quelques algorithmes. 2 Définition Description des tâches pour que celles-ci soient aisément programmables Différent d’une méthode."

Présentations similaires


Annonces Google