forked from menault/2026_TD3_DEV51_Qualite_Algo
EXO 4 - optimisation F5
This commit is contained in:
+2
-2
@@ -92,7 +92,7 @@ La complexité de la fonction est de <span style="color:blue">[O(n)]</span> pour
|
||||
|
||||
- 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 5 nom du commit : "EXO 4 - optimisation F5". Emprunte : ff68d260a7a58441
|
||||
|
||||
- Optimisation de la fonction 6 nom du commit : "". Emprunte : ff68d260a7a58441
|
||||
|
||||
@@ -105,4 +105,4 @@ La complexité de la fonction est de <span style="color:blue">[O(n)]</span> pour
|
||||
- Optimisation de la fonction 10 nom du commit : "fonction 10 : O(L)". Emprunte : ff68d260a7a58441
|
||||
|
||||
|
||||
Le temps minimal atteint avec les modification est de 1.821 secondes.
|
||||
Le temps minimal atteint avec les modification est de 1.651 secondes.
|
||||
|
||||
@@ -130,16 +130,20 @@ long meilleure_periode(const long *totaux, int nb_jours, int *debut, int *fin)
|
||||
long meilleur = totaux[0];
|
||||
*debut = 0;
|
||||
*fin = 0;
|
||||
for (int i = 0; i < nb_jours; i++) {
|
||||
for (int j = i; j < nb_jours; j++) {
|
||||
long somme = 0;
|
||||
for (int k = i; k <= j; k++)
|
||||
somme += totaux[k];
|
||||
if (somme > meilleur) {
|
||||
meilleur = somme;
|
||||
*debut = i;
|
||||
*fin = j;
|
||||
}
|
||||
long somme_courante = totaux[0];
|
||||
int debut_courant = 0;
|
||||
|
||||
for (int j = 1; j < nb_jours; j++) {
|
||||
if (somme_courante < 0) {
|
||||
somme_courante = totaux[j];
|
||||
debut_courant = j;
|
||||
} else {
|
||||
somme_courante += totaux[j];
|
||||
}
|
||||
if (somme_courante > meilleur) {
|
||||
meilleur = somme_courante;
|
||||
*debut = debut_courant;
|
||||
*fin = j;
|
||||
}
|
||||
}
|
||||
return meilleur;
|
||||
|
||||
Reference in New Issue
Block a user