"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment trouver efficacement les nombres premiers dans une plage de JavaScript?

Comment trouver efficacement les nombres premiers dans une plage de JavaScript?

Publié le 2025-03-04
Parcourir:412

How to Efficiently Find Prime Numbers Within a Range in JavaScript?

Trouvez efficacement les nombres premiers dans une plage

dans JavaScript, l'identification des nombres premiers entre une plage spécifiée peut être réalisé via diverses méthodes. Une approche couramment utilisée est l'algorithme de tamis de l'eratosthène. Cette technique marque les multiples de nombres premiers en tant que non-prime, permettant l'identification efficace des nombres premiers.

Ce qui suit est une implémentation JavaScript d'un tamis modifié de l'algorithme d'Eratosthène pour trouver des nombres premiers dans la plage de 0 à 100:

function getPrimes(max) {
    var sieve = [], i, j, primes = [];
    for (i = 2; i  

Dans cette fonction, un tableau nommé «Sive» est utilisé pour suivre les numéros marqués comme non-prison. Itérant à travers des nombres de 2 au maximum spécifié, les nombres non marqués sont considérés comme privilégiés et ajoutés au tableau «nombres premiers». Les multiples des nombres premiers sont par la suite marqués en tant que non-prime dans le tableau «tamis».

En utilisant cette fonction, vous pouvez récupérer efficacement tous les nombres premiers dans une plage spécifiée. Par exemple, GetPrimes (100) renverra un tableau de tous les nombres premiers entre 2 et 100 (inclus).

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3