forked from abraham/2026_TD3_DEV51_Qualite_Algo
109 lines
3.1 KiB
Markdown
109 lines
3.1 KiB
Markdown
# Groupe :
|
|
- Karl FRAMERY
|
|
- Ozvann ABRAHAM
|
|
|
|
|
|
|
|
# 1.Mesurer
|
|
|
|
```
|
|
gcc -O2 banque.c -o banque && time ./banque
|
|
```
|
|
|
|
```
|
|
Empreinte : ff68d260a7a58441
|
|
|
|
real 0m4,793s
|
|
user 0m4,772s
|
|
sys 0m0,005s
|
|
```
|
|
|
|
Le temps d'éxecution du programme est de 4.793 seconde et l'emprunte est : [ff68d260a7a58441]
|
|
|
|
|
|
# 2.Profiler
|
|
|
|
|
|
La fonction F1 : <trier_par_montant> est d'une complexité <span style="color:yellow">[O(n²)]</span> pour une utilisation du temps de 43.77% du temps totale d'exécution pour 1 call.
|
|
|
|
La fonction F7 : <nb_paires_opposees> est d'une complexité <span style="color:yellow">[O(n²)]</span> pour une utilisation du temps de 15.32% du temps totale d'exécution pour 1 call.
|
|
|
|
La fonction F8 : <nb_facons_rendre> est d'une complexité <span style="color:red">[O(2^n)]</span> pour une utilisation du temps de 12.84% du temps totale d'exécution pour 1 call.
|
|
|
|
La fonction F6 : <rechercher_par_id> est d'une complexité <span style="color:blue">[O(n)]</span> pour une utilisation du temps de 12.21% du temps totale d'exécution pour 30000 calls.
|
|
|
|
|
|
On peut voir que les fonctions les plus coûteuse ont les plus grande complexité.
|
|
|
|
|
|
|
|
# 3.Calculer
|
|
|
|
|
|
### Fonction F1
|
|
|
|
La complexité de la fonction est de <span style="color:yellow">[O(n²)]</span> pour un M de 6
|
|
|
|
### Fonction F2
|
|
|
|
La complexité de la fonction est de <span style="color:yellow">[O(n²)]</span> pour un M de 5
|
|
|
|
### Fonction F3
|
|
|
|
La complexité de la fonction est de <span style="color:yellow">[O(n²)]</span> pour un M de 4
|
|
|
|
### Fonction F4
|
|
|
|
La complexité de la fonction est de <span style="color:yellow">[O(n²)]</span> pour un M de 4
|
|
|
|
### Fonction F5
|
|
|
|
La complexité de la fonction est de <span style="color:yellow">[O(n³)]</span> pour un M de 5
|
|
|
|
### Fonction F6
|
|
|
|
La complexité de la fonction est de <span style="color:blue">[O(n)]</span> pour un M de 3
|
|
|
|
### Fonction F7
|
|
|
|
La complexité de la fonction est de <span style="color:yellow">[O(n²)]</span> pour un M de 4
|
|
|
|
### Fonction F8
|
|
|
|
La complexité de la fonction est de <span style="color:red">[O(2^n)]</span> pour un M de 4
|
|
|
|
### Fonction F9
|
|
|
|
La complexité de la fonction est de <span style="color:blue">[O(1)]</span> pour un M de 14
|
|
|
|
### Fonction F10
|
|
|
|
La complexité de la fonction est de <span style="color:blue">[O(n)]</span> pour un M de 2
|
|
|
|
|
|
|
|
# 4. Optimisation
|
|
|
|
- Optimisation de la fonction 1 nom du commit : ""
|
|
|
|
- Optimisation de la fonction 2 nom du commit : "fonction 2 : O(n + C)". Emprunte : ff68d260a7a58441
|
|
|
|
- Optimisation de la fonction 3 nom du commit : "". Emprunte : ff68d260a7a58441
|
|
|
|
- Optimisation de la fonction 4 nom du commit : "fonction 4 : O(n + J)". Emprunte : ff68d260a7a58441
|
|
|
|
- Optimisation de la fonction 5 nom du commit : "". Emprunte : ff68d260a7a58441
|
|
|
|
- Optimisation de la fonction 6 nom du commit : "". Emprunte : ff68d260a7a58441
|
|
|
|
- Optimisation de la fonction 7 nom du commit : "". Emprunte : ff68d260a7a58441
|
|
|
|
- Optimisation de la fonction 8 nom du commit : "". Emprunte : ff68d260a7a58441
|
|
|
|
- Optimisation de la fonction 9 nom du commit : "". Emprunte : ff68d260a7a58441
|
|
|
|
- Optimisation de la fonction 10 nom du commit : "". Emprunte : ff68d260a7a58441
|
|
|
|
|
|
|