JavaScriptda optimal algoritmni tanlash
Ba'zan kod muammosi, masalani yechishda eng optimal yechim tanlanmaganligi bilan bog'liq bo'lishi mumkin.
Misol tariqasida, oldimizga 1 dan 1000000 gacha bo'lgan
butun sonlar yig'indisini topish vazifasi qo'yilgan bo'lsin.
Berilgan masalani yechamiz:
let sum = 0;
for (let i = 1; i <= 1000000; i++) {
sum += i;
}
console.log(sum);
Nima noto'g'ri? Gap shundaki, berilgan masala uchun matematik yechim mavjud.
Bu yechim deyarli hech qanday resurs talab qilmaydi! Uni dasturlashtiramiz:
let n = 1000000;
let sum = n * (n + 1) / 2;
console.log(sum);
Xulosa: resurs talab qiladigan masalani yechishdan oldin, uning yechimi uchun tayyor matematik formula yoki tayyor matematik yondashuv mavjudligini tekshirib ko'ring.
1 dan 1000 gacha bo'lgan oraliqda, 5 ga
qoldiqsiz bo'linadigan sonlar sonini toping.
1 dan 1000000 gacha bo'lgan barcha sonlarni yozish
uchun kerak bo'ladigan raqamlar sonini toping.