Vérification efficace des nombres premiers en JavaScript
En programmation informatique, déterminer si un nombre donné est premier est une tâche fondamentale. Un nombre premier est un entier positif supérieur à 1 qui n'a pas de diviseur positif autre que 1 et lui-même.
Une approche populaire pour vérifier la primalité implique le tamis d'Ératosthène. Cependant, pour des raisons de performances, une méthode plus efficace peut être utilisée, comme le démontre l'implémentation JavaScript suivante :
let inputValue = 7; let isPrime = inputValue == 1 ? false : true; // Because 1 is not prime for (let i = 2; iAnalyse de la complexité temporelle et spatiale
Le temps La complexité de l'algorithme ci-dessus est O(sqrt(n)), où n représente la valeur d'entrée. En effet, la boucle parcourt tous les entiers jusqu'à la racine carrée du nombre d'entrée, ce qui constitue une optimisation significative par rapport à la vérification de tous les entiers jusqu'à n.
La complexité spatiale est O(1), car il ne nécessite aucune structure de données supplémentaire au-delà des variables primitives.
Approche alternative
Une syntaxe alternative pour vérifier la primalité en JavaScript est :
const isPrime = num => { for (let i = 2, s = Math.sqrt(num); i 1; }Cette approche atteint la même complexité temporelle et spatiale que la précédente tout en utilisant une syntaxe de fonction de flèche plus concise.
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