1 / 30

Algorithmes et structures de donn es avanc es Cours 12

D

jacob
Télécharger la présentation

Algorithmes et structures de donn es avanc es Cours 12

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Algorithmes et structures de données (avancées) Cours 1+2 Patrick Reuter http://www.labri.fr/~preuter

    3. Motivation Niklaus Wirth, ETH Zuerich, 1976 « Algorithms + Data Structures = Programs »

    4. Motivation

    5. Motivation p. ex. / ex:p. ex. / ex:

    6. Motivation a / àa / à

    7. Motivation

    8. Motivation

    9. Motivation

    10. Motivation plannifier / planifierplannifier / planifier

    11. Algorithme http://www.labri.fr/~preuter/asda2007 L'algorithmique est la science des algorithmes, visant à étudier les opérations nécessaires à la réalisation d'un calcul. René Descartes dans le Discours de la Méthode : « diviser chacune des difficultés que j'examinerois, en autant de parcelles qu'il se pourroit, et qu'il seroit requis pour les mieux résoudre. ». examinerois, pourroit, seroit, / examine, peut, est, (ici « autant que » est une comparaison donc pas de subjonctif, différent des phrases du type « quitte à s’être levé, autant que ce soit pour aller en cours) ; pour les mieux résoudre / pour mieux les résoudre ; problème / problèmesexaminerois, pourroit, seroit, / examine, peut, est, (ici « autant que » est une comparaison donc pas de subjonctif, différent des phrases du type « quitte à s’être levé, autant que ce soit pour aller en cours) ; pour les mieux résoudre / pour mieux les résoudre ; problème / problèmes

    12. Algorithme Un algorithme est une méthode de résolution de problème énoncée sous la forme d'une série d'opérations à effectuer. examinerois, pourroit, seroit, / examine, peut, est, (ici « autant que » est une comparaison donc pas de subjonctif, différent des phrases du type « quitte à s’être levé, autant que ce soit pour aller en cours) ; pour les mieux résoudre / pour mieux les résoudre ; problème / problèmesexaminerois, pourroit, seroit, / examine, peut, est, (ici « autant que » est une comparaison donc pas de subjonctif, différent des phrases du type « quitte à s’être levé, autant que ce soit pour aller en cours) ; pour les mieux résoudre / pour mieux les résoudre ; problème / problèmes

    13. Algorithme La mise en œuvre de l'algorithme consiste en l'écriture de ces opérations dans un langage de programmation et constitue alors la brique de base d'un programme informatique (implémentation, « codage ») examinerois, pourroit, seroit, / examine, peut, est, (ici « autant que » est une comparaison donc pas de subjonctif, différent des phrases du type « quitte à s’être levé, autant que ce soit pour aller en cours) ; pour les mieux résoudre / pour mieux les résoudre ; problème / problèmesexaminerois, pourroit, seroit, / examine, peut, est, (ici « autant que » est une comparaison donc pas de subjonctif, différent des phrases du type « quitte à s’être levé, autant que ce soit pour aller en cours) ; pour les mieux résoudre / pour mieux les résoudre ; problème / problèmes

    14. Algorithme L'algorithme devra être plus ou moins détaillé selon le niveau d'abstraction du langage utilisé ; autrement dit, une recette de cuisine doit être plus ou moins détaillée en fonction de l'expérience du cuisinier. examinerois, pourroit, seroit, / examine, peut, est, (ici « autant que » est une comparaison donc pas de subjonctif, différent des phrases du type « quitte à s’être levé, autant que ce soit pour aller en cours) ; pour les mieux résoudre / pour mieux les résoudre ; problème / problèmesexaminerois, pourroit, seroit, / examine, peut, est, (ici « autant que » est une comparaison donc pas de subjonctif, différent des phrases du type « quitte à s’être levé, autant que ce soit pour aller en cours) ; pour les mieux résoudre / pour mieux les résoudre ; problème / problèmes

    17. Exemple Trouver un numéro dans un annuaire par nom donnée

    18. Exemple Trouver un nom dans un annuaire par numéro donnée

    19. Structure de données Définition Wikipedia (12/9/2005) une structure logique destinée à contenir des données afin de leur donner une organisation permettant de simplifier leur traitement. Exemple : On peut présenter des numéros de téléphone * - par département, - par nom - par profession (pages jaunes), - par numéro téléphonique (annuaires destinés au télémarketing), - par rue et/ou - une combinaison quelconque de ces classements. À chaque usage correspondra une structure d'annuaire appropriée.

    20. Ingrédients d’algorithmes Variables : nombre y i patrick x1 Mais non pas : 3x entrée

    21. Ingrédients d’algorithmes Affectation Condition/Comparaison Appel de fonction Structure de contrôle Branchements conditionnels (multiples) Boucles Bloc d’instruction

    22. Ingrédients d’algorithmes Affectation a := 7; score := 0; score := score + 100; gameover := FAUX; Note: Affectation d’une seule variable avec un valeur. La variable à affecter figure à gauche, la valeur à droite Faux: a+b := 6; 7 := c; un valeur / une valeurun valeur / une valeur

    23. Ingrédients d’algorithmes Condition/Comparaison a = 7 absent = FAUX malade = VRAI OU vacances = VRAI score > highscore; … Note: Le résultat d’une condition/comparaison peut être uniquement soit VRAI, soit FAUX

    24. Ingrédients d’algorithmes Appel de fonction, p.ex. afficher(« Bonjour tout le monde »); resultat := racine_carre(16);

    25. Ingrédients d’algorithmes Structure de contrôle Branchements conditionnels SI <condition> ALORS <bloc d’instructions> SINON <bloc d’instructions>

    26. Ingrédients d’algorithmes Structure de contrôle Branchements conditionnels SI <condition> ALORS <bloc d’instructions> SINON <bloc d’instructions> Exemple: SI (score>meilleur_score) ALORS meilleur_score := score;

    27. Ingrédients d’algorithmes Structure de contrôle Branchements conditionnels SI <condition> ALORS <bloc d’instructions> SINON <bloc d’instructions> Exemple: SI (score>meilleur_score) ALORS meilleur_score := score;

    28. Ingrédients d’algorithmes Structure de contrôle Branchements conditionnels multiples CAS mois DE      ‘1': nom := « Janvier » ;      ‘2': nom := « Février » ;      ‘3': nom := « Mars » ;      ‘4': nom := « Avril » ;      ‘5': nom := « Mai » ; ….      ‘12': nom := « Décembre » ;    AUTREMENT      afficher('Erreur dans le mois') ;  FIN CAS;

    29. Ingrédients d’algorithmes Structure de contrôle Boucle Définition : Suite d’instructions qui peut être exécuté plusieurs fois (itération) exécuté / exécutée exécuté / exécutée

    30. Ingrédients d’algorithmes Structure de contrôle Boucle TANT QUE <condition> FAIRE <bloc d’instructions> FIN TANT QUE ou FAIRE <bloc d’instructions> TANT QUE <condition>

More Related