Cari Nombor Perdana dengan Cekap dalam Julat
Dalam JavaScript, mengenal pasti nombor perdana antara julat yang ditentukan boleh dicapai melalui pelbagai kaedah. Satu pendekatan yang biasa digunakan ialah algoritma Sieve of Eratosthenes. Teknik ini menandakan gandaan nombor perdana sebagai bukan perdana, membolehkan pengecaman nombor perdana yang cekap.
Berikut ialah pelaksanaan JavaScript bagi algoritma Ayak Eratosthenes yang diubah suai untuk mencari nombor perdana dalam julat 0 hingga 100 :
function getPrimes(max) { var sieve = [], i, j, primes = []; for (i = 2; i <= max; ++i) { if (!sieve[i]) { // i has not been marked -- it is prime primes.push(i); for (j = i << 1; j <= max; j += i) { sieve[j] = true; } } } return primes; }
Dalam fungsi ini, tatasusunan bernama 'ayak' digunakan untuk menjejak nombor yang ditandakan sebagai bukan perdana. Mengulangi nombor dari 2 hingga maksimum yang ditentukan, nombor tidak bertanda dianggap perdana dan ditambah pada tatasusunan 'prima'. Berbilang nombor perdana kemudiannya ditandakan sebagai bukan perdana dalam tatasusunan 'ayak'.
Dengan menggunakan fungsi ini, anda boleh mendapatkan semula semua nombor perdana dalam julat tertentu dengan cekap. Sebagai contoh, getPrimes(100) akan mengembalikan tatasusunan semua nombor perdana antara 2 dan 100 (termasuk).
Atas ialah kandungan terperinci Bagaimana untuk Cekap Mencari Nombor Perdana Dalam Julat dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!