Zgjedhja e algoritmit optimal në JavaScript
Ndonjëherë problemi i kodit mund të lidhet me faktin se është zgjedhur zgjidhja më jo optimale e problemit.
Le të themi, për shembull, që kemi përpara detyrën
të gjejmë shumën e numrave të plotë nga 1 në 1000000.
Le të zgjidhim detyrën e parashtruar:
let sum = 0;
for (let i = 1; i <= 1000000; i++) {
sum += i;
}
console.log(sum);
Çfarë nuk shkon? Çështja është se për zgjidhjen e detyrës së parashtruar ekziston një zgjidhje matematikore.
Kjo zgjidhje praktikisht nuk kërkon burime! Le ta programojmë atë:
let n = 1000000;
let sum = n * (n + 1) / 2;
console.log(sum);
Morali: para zgjidhjes së një detyre që kërkon shumë burime patjetër kontrolloni nëse ekziston një formulë e gatshme matematikore për zgjidhjen e saj ose një qasje e gatshme matematikore.
Gjeni numrin e numrave që pjesëtohen pa mbetje
me 5, nga intervali nga 1
në 1000.
Gjeni numrin e shifrave që do të nevojiten
për të shkruar të gjithë numrat nga 1 në 1000000.