Pemilihan Algoritma Optimum dalam JavaScript
Kadangkala masalah kod berkaitan dengan penyelesaian masalah yang dipilih bukanlah yang paling optimum.
Katakan, sebagai contoh, kita mempunyai tugas
untuk mencari hasil tambah integer
dari 1 hingga 1000000.
Mari selesaikan tugas yang diberikan:
let sum = 0;
for (let i = 1; i <= 1000000; i++) {
sum += i;
}
console.log(sum);
Apa yang salah? Masalahnya ialah untuk menyelesaikan tugas yang diberikan terdapat penyelesaian matematik.
Penyelesaian ini hampir tidak memerlukan sumber! Mari aturcarakannya:
let n = 1000000;
let sum = n * (n + 1) / 2;
console.log(sum);
Pengajaran: sebelum menyelesaikan tugas yang memerlukan banyak sumber, pastikan anda menyemak sama ada terdapat formula matematik siap atau pendekatan matematik siap untuk menyelesaikannya.
Cari bilangan nombor yang boleh dibahagi tanpa baki
dengan 5, dalam julat dari 1 hingga
1000.
Cari bilangan digit yang diperlukan
untuk menulis semua nombor dari 1 hingga 1000000.