Choix de l'algorithme optimal en JavaScript
Parfois, le problème du code peut être lié au fait que la solution choisie pour le problème n'est pas la plus optimale.
Supposons, par exemple, que nous soyons confrontés à la tâche
de trouver la somme des entiers de 1 à 1000000.
Résolvons le problème posé :
let sum = 0;
for (let i = 1; i <= 1000000; i++) {
sum += i;
}
console.log(sum);
Qu'est-ce qui ne va pas ? Le fait est que pour résoudre le problème posé, il existe une solution mathématique.
Cette solution ne nécessite pratiquement aucune ressource ! Programmons-la :
let n = 1000000;
let sum = n * (n + 1) / 2;
console.log(sum);
Morale : avant de résoudre une tâche gourmande en ressources, vérifiez toujours s'il n'existe pas une formule mathématique toute faite ou une approche mathématique prête à l'emploi pour la résoudre.
Trouvez le nombre de nombres divisibles sans reste
par 5, dans l'intervalle de 1 à
1000.
Trouvez le nombre de chiffres qui seront nécessaires
pour écrire tous les nombres de 1 à 1000000.