Académique Documents
Professionnel Documents
Culture Documents
e
2 année Clemenceau
Q 1. Ouvrir un nouveau fichier python, et copier les programmes du cours et du TD permettant d’exécuter le tri
fusion et le tri rapide. Importer dans ce fichier les modules time, numpy et matplotlib.pyplot. Importer également
le module random qui va permettre de créer une liste d’entiers à trier L avec la syntaxe suivante.
random . s h u f f l e (L)
Q 2. Écrire une fonction duree(fct, N : int, n = 1) -> list qui renvoie la durée mise par la fonction fct pour
trier n fois une liste de N éléments préalablement mélangée. Utiliser les indications précédentes fournies.
Q 3. Utiliser cette fonction pour estimer la durée du tri d’une liste de 100 éléments. Faire de même pour une liste de
5000 éléments.
Q 4. Estimer le nombre d’opérations effectuées par le tri fusion selon sa complexité. En déduire un ordre de grandeur
de la durée que met votre machine pour exécuter une opération. Déterminer n tel que cette durée soit majorée par
10−n secondes et minorée par 10−(n+1) secondes.
Q 5. Estimer la taille (notée N60s) de la liste qui nécessitera plus d’une minute à la fonction tri_fusion pour la trier.
Utiliser pour cela les programmes des versions impérative ou récursive de la méthode de résolution d’une équation
par dichotomie que nous avons écrits au TD2, que vous recopierez dans votre fichier. N60s sera déterminée avec trois
chiffres significatifs.
Q 6. Tracer un graphique montrant l’évolution de la durée prise par les fonctions tri_fusion et tri_rapide en
fonction de la taille des listes triées en respectant les contraintes suivantes.
— Donner un titre à votre graphique.
— Calculer les durées pour les tailles suivantes : N = list(range(1, 10000 + 1, 100).
— Tracer l’évolution de la durée prise par tri_fusion en vert.
— Tracer l’évolution de la durée prise par tri_rapide en rouge.
— Tracer la courbe représentative de la fonction n 7→ n × log(n) × 10−6 en bleu.
— Ajouter une légende en haut à gauche, l’étiquette des abscisses et des ordonnées.
— Enregistrer votre graphique au format png sous un nom au format suivant : TAF3_Nom_Prenom.png.
Exploiter pour cela le module html Tracés_courbes.zip disponible sur eLyco dans les ressources /Enseignement
/Tracés de fonction.