Heim > Web-Frontend > js-Tutorial > Wie kann man in JavaScript effizient nach Primzahlen suchen?

Wie kann man in JavaScript effizient nach Primzahlen suchen?

Susan Sarandon
Freigeben: 2024-10-29 20:12:29
Original
749 Leute haben es durchsucht

How to Efficiently Check for Prime Numbers in JavaScript?

So bestimmen Sie Primzahlen in JavaScript

In JavaScript ist die Identifizierung von Primzahlen eine häufige Programmieraufgabe. Eine Primzahl ist eine positive ganze Zahl größer als 1, die durch keine andere positive ganze Zahl außer 1 und sich selbst teilbar ist.

Lösung 1: Naiver Ansatz

Der bereitgestellte Code Snippet bietet eine einfache Möglichkeit, zu überprüfen, ob eine Zahl eine Primzahl ist:

<code class="js">let inputValue = 7;
let isPrime = inputValue == 1 ? false : true;

for (let i = 2; i < inputValue; i++) {
  inputValue % i == 0 ? isPrime *= false : isPrime *= true;
}

alert(`${inputValue} is ${isPrime ? 'prime' : 'not prime'} number`);
Nach dem Login kopieren

Zeitkomplexität: O(sqrt(n))

Raumkomplexität: O(1)

Lösung 2: Effizienter Ansatz

Ein verbesserter Ansatz zur Überprüfung von Primzahlen ist:

<code class="js">const isPrime = num => {
  for (let i = 2, s = Math.sqrt(num); i <= s; i++) {
    if (num % i === 0) return false;
  }
  return num > 1;
};</code>
Nach dem Login kopieren

Dieser Code macht sich die Tatsache zunutze, dass eine Zahl, die keine Primzahl ist, einen Faktor hat, der kleiner oder gleich ihrer Quadratwurzel ist. Indem wir nach Faktoren bis zur Quadratwurzel suchen, können wir potenzielle Faktoren effizient eliminieren.

Zeitkomplexität: O(sqrt(n))

Raumkomplexität : O(1)

Das obige ist der detaillierte Inhalt vonWie kann man in JavaScript effizient nach Primzahlen suchen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage