Csi2514 4x conception et analyse des algorithmes
ANALYSE D ? ALGORITHMES ? Révision mathématique rapide ? Temps d ? exécution ? Pseudo-code ? Analyse d ? algorithmes ? Notation asymptotique ? Analyse asymptotique T n n Entrée Algorithme Sortie Analyse d ? algorithmes Cas moyen vs Pire des cas Temps d ? exécution d ? un algorithme ? Un algorithme peut être plus performant avec certains ensembles de données qu ? avec d ? autres ? Trouver le cas moyen peut s ? avérer di ?cile alors les algorithmes sont mesurés typiquement selon la complexité temporelle du pire des cas ? De plus pour certain domaines d ? application par ex contrôle aérien chirurgie gestion de réseau conna? tre la complexité temporelle du pire des cas est d ? importance cruciale Temps ms pire des cas ms cas moyen ms meilleur des cas ms ms ABCDE F G Entrée Analyse d ? algorithmes Mesurer le temps d ? exécution ? Comment devrions-nous mesurer le temps d ? exécution d ? un algorithme ? Étude expérimentale - Écrivez un programme qui réalise l ? algorithme - Exécutez le programme avec des ensembles de données de taille et de contenu variés - Utilisez une méthode System currentTimeMillis pour mesurer précisément le temps d ? exécution - Les mesures résultantes devraient ressembler à t ms Analyse d ? algorithmes n Au-delà des études expérimentales ? Les études expérimentales ont quelques restrictions - Il est nécessaire de réaliser et de tester l ? algorithme a ?n de déterminer son temps d ? exécution - Les essais peuvent être faits seulement sur un ensemble limité d ? entrées et ils peuvent ne pas être indicatifs du temps d ? exécution d ? autres entrées non considérées - A ?n de comparer deux algorithmes les mêmes environnements matériel et logiciel devraient être utilisés ? Nous développerons maintenant une méthodologie générale pour analyser le temps d ? exécution d ? algorithmes qui - Utilise une description de haut niveau de l ? algorithme au lieu de tester sa réalisation - Considère toutes les entrées possibles - Permet d ? évaluer l ? e ?cacité d ? un algorithme indépendamment des environnements matériels et logiciels Analyse d ? algorithmes CPseudo-code ? Le pseudo-code est une description d ? algorithme qui est plus structurée que la prose ordinaire mais moins formelle qu ? un langage de programmation ? Exemple trouver l ? élément maximal d ? un vecteur array Algorithm arrayMax A n Entrée Un vecteur A contenant n entiers Sortie L ? élément maximal de A currentMax A for i to n ?? do if currentMax A i then currentMax A i return currentMax ? Le pseudo- code est notre notation de choix pour la description d ? algorithmes ? Cependant le pseudo-code cache plusieurs problèmes liés à la conception de programmes Qu ? est-ce que le pseudo-code ? Un mélange de langage naturel et de concepts de programmation de haut niveau qui décrit les idées générales derrière la réalisation générique d ? une structure
Documents similaires
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11704039340gsdquxkgksbxtewpybc4fj7lnkxkub6z0i0n5gvc1nkpw02wasuqrcod747ftlcgpc8nq2laklo6pylbn50ejlradepcs80auslw.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/mxrZiFvDoTUIPLysx0s3HDlJGbkIartVnCEnxXWz04vGbz04VK7F1kTXwVk2KipAqHXCvevaRa23izX3C3KO9oqO.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/117039359588gbewp3fqn1pdoaxwe8bmi8qvbnizgsnv7gyobfkpwnt3bbgsjw9tkcy0qyjq1gymyodtgymqnapxwv36ws2sr4pg09r69d3xgon.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/TYuZYK8z94DJCtSyBSjJ3tZY2NLiRVWEzLMhJtmiMaZp7U9zJDmpJFtCh7isWAt798HkCtMAzyNn8vvbLZAWJNbc.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11704466299ttssyjbcsrsuude4k1jjxpcdvcpvqzmmwrercspvkprbcndbfispyryyjuqf6mph11khm7wpcwlishhnqvnra1zyn4qsymarft1x.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/Kt0VpeHf98hqmSiRmo4Xw7pfusMIZC6Kbwxc3GlHKAe0K8ojMiy6OSNR3RJIgGFpvT0bMeiWxeA9vyvUUzOMKGRm.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/J8em7htbPGK2fR4nVQqB3S5cisGTIF8Vmk6haXeH0Vo7v58hqxIURjiIPAhOLp0jscPqv757iSJonBGNoGryekBx.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/117035441334liileyrgzqlsoejzw1ze2gdfyxfl7zxvftvebbemvz0qffc8sphdcmgz34ypgpnfcbbuxjmqqyiwgojba6ahe4fooavqvppl1kc.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/Ww7zpWtPTqD3rmDr220QGjZcmckiGaTuCxZk1aFZFznO7L07MwqPL3TyjuskVM4Q9A7Hh2sV89FrHK6eMJuWOJAy.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703902400ykno8tvxhhb3zp87zx8yiw6jdkprhriafrywbxxhxqlodywanz6kcatbiu3hdnl5up89vld6t5nf9vnlmyuj1iqwamv2uxkaxujl.png)
-
27
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise- Détails
- Publié le Jan 10, 2022
- Catégorie Management
- Langue French
- Taille du fichier 504.4kB