Izbira optimalnega algoritma v JavaScript

Včasih je težava s kodo povezana z dejstvom, da izbrana rešitev problema ni najbolj optimalna.

Recimo, da se soočamo z nalogo poiskati vsoto celih števil od 1 do 1000000. Rešimo postavljeni problem:

javascriptlet sum = 0;

for (let i = 1; i <= 1000000; i++) {
  sum += i;
}
  
console.log(sum);

Kaj je torej narobe? Bistvo je v tem, da za rešitev tega problema obstaja matematična rešitev.

Ta rešitev praktično ne zahteva virov! Programirajmo jo:

javascriptlet n = 1000000;
let sum = n * (n + 1) / 2;
console.log(sum);

Nauk: pred reševanjem zahtevnega problema vedno preverite, ali obstaja gotova matematična formula ali pripravljen matematični pristop za njegovo rešitev.

Задание 1

Poiščite število števil, ki so deljiva brez ostanka s 5, v intervalu od 1 do 1000.

Задание 2

Poiščite število števk, ki jih boste potrebovali, da zapišete vsa števila od 1 do 1000000.