Note basiques pour bien travailler gcc -g -pg -o student_rank student_rank.c heapsort.c bubblesort.c Pour lancer : ./student_rank commande pour analyser le gmon.out : gprof ./student_rank (gprof + executable) Première analyse : Je ne comprend pas trop, les valeur de bases (5 5 1) sont trop faible pour avoir un temps avec gprof chauqe fonction de programme est appeller entre 5 et 25 fois lors de l'éxécution je ne comprend pas encore la valeur qui suit chaque nom de fonction "[n]". Lors de la modification de valeurs (1000 1000 0) on constate une augmentation significative du temps d'exécution et du nombre d'appel des fonction. (2.84s) et plus de 100000 appel find_rank_student par exemple. ==> on peu comprendre le code sans regarder le code source, grace a l'ordre par lequel les fonction sont appellée. optimisation du code proposé : réduire le nombre d'appels de bubblesort enlever par exemple celui dans sort_student ou find rank student edit : find rank student n'as pas besoin d'utiliser bubblesort; en supprimant lma ligne de la fonction, pour les valeur 1000 et 10000 on passe de 30 sec a 0.05seconde d'execution. on prut cherrcher la petite bête et optimiser bubblesort