Избор оптималног алгоритма у JavaScript-у
Понекад проблем у коду може бити повезан са тим што није изабрано најоптималније решење задатка.
Рецимо да је пред нама задатак
да пронађемо збир целих бројева од 1 до 1000000.
Решимо постављени задатак:
let sum = 0;
for (let i = 1; i <= 1000000; i++) {
sum += i;
}
console.log(sum);
Шта није у реду? Поента је у томе што за решавање овог задатка постоји математичко решење.
Ово решење практично не захтева ресурсе! Програмирајмо га:
let n = 1000000;
let sum = n * (n + 1) / 2;
console.log(sum);
Поука: пре решавања задатка захтевног по ресурсе увек проверите да ли за његово решавање постоји готова математичка формула или готов математички приступ.
Пронађите колико бројева, дељивих без остатка
са 5, постоји у интервалу од 1 до
1000.
Пронађите колико ће цифара бити потребно
да се запишу сви бројеви од 1 до 1000000.