Verificación eficiente de números primos en JavaScript
En programación informática, determinar si un número determinado es primo es una tarea fundamental. Un número primo es un entero positivo mayor que 1 que no tiene divisores positivos distintos de 1 y él mismo.
Un método popular para comprobar la primalidad implica el tamiz de Eratóstenes. Sin embargo, por consideraciones de rendimiento, se puede emplear un método más eficiente, como se demuestra en la siguiente implementación de JavaScript:
let inputValue = 7; let isPrime = inputValue == 1 ? false : true; // Because 1 is not prime for (let i = 2; iAnálisis de la complejidad del tiempo y el espacio
El tiempo La complejidad del algoritmo anterior es O(sqrt(n)), donde n representa el valor de entrada. Esto se debe a que el bucle recorre todos los números enteros hasta la raíz cuadrada del número de entrada, lo cual es una optimización significativa con respecto a la verificación de todos los números enteros hasta n.
La complejidad del espacio es O(1), ya que no requiere estructuras de datos adicionales más allá de las variables primitivas.
Enfoque alternativo
Una sintaxis alternativa para verificar la primalidad en JavaScript es:
const isPrime = num => { for (let i = 2, s = Math.sqrt(num); i 1; }Este enfoque logra la misma complejidad temporal y espacial que el anterior y al mismo tiempo utiliza una sintaxis de función de flecha más concisa.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3