Elegante Möglichkeit, Primzahlen zu generieren
In diesem Artikel erfahren Sie, wie Sie auf eleganteste Weise eine Liste von Primzahlen erstellen. Ein eleganter Algorithmus sollte klar, prägnant und effizient sein.
Verbessertes Sieb von Eratosthenes
Eine Methode besteht darin, das Sieb von Eratosthenes zu verbessern. Das Folgende ist eine elegante Java-Implementierung:
<code class="language-java">public static ArrayList<Integer> generatePrimes(int n) { ArrayList<Integer> primes = new ArrayList<>(); boolean[] isPrime = new boolean[n + 1]; Arrays.fill(isPrime, true); isPrime[0] = isPrime[1] = false; for (int i = 2; i * i <= n; i++) { if (isPrime[i]) { for (int j = i * i; j <= n; j += i) { isPrime[j] = false; } } } for (int i = 2; i <= n; i++) { if (isPrime[i]) { primes.add(i); } } return primes; }</code>
Dieser Algorithmus identifiziert effizient Primzahlen kleiner oder gleich n, indem er iterativ Vielfache der gefundenen Primzahlen entfernt und so Genauigkeit und Effizienz gewährleistet.
Weitere elegante Lösungen
Neben der verbesserten Siebmethode kommen auch folgende Methoden in Betracht:
Wählen Sie den am besten geeigneten Ansatz zum Aufbau eleganter Algorithmen zur Primzahlengenerierung basierend auf Ihren spezifischen Anforderungen und Vorlieben hinsichtlich Effizienz, Einfachheit und Lesbarkeit.
Das obige ist der detaillierte Inhalt vonWas ist der eleganteste Weg, eine Liste von Primzahlen zu erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!