Heim > Artikel > Backend-Entwicklung > Verwenden Sie ein Skript, um Primzahlen in PHP zu finden
In der Informatik bezeichnet eine Primzahl eine positive ganze Zahl, die nur durch 1 und sich selbst teilbar ist. Primzahlen können in Bereichen wie Verschlüsselung, mathematischer Ableitung und Algorithmusoptimierung verwendet werden. In praktischen Anwendungen ist der Algorithmus zum Finden von Primzahlen auch einer der sehr wichtigen Wissenspunkte. Heute werden wir diskutieren, wie man Skripte in PHP verwendet, um Primzahlen zu finden.
Die Screening-Methode ist ein klassischer Algorithmus zum Finden von Primzahlen. Ihre Kernidee besteht darin, kontinuierlich Zahlen herauszufiltern, die keine Primzahlen sind, und am Ende bleibt eine Primzahl übrig. Die spezifischen Schritte sind wie folgt:
Der Implementierungscode lautet wie folgt:
function sieve($n) { $prime = array(); for($i = 2; $i <= $n; ++$i) { $prime[$i] = true; } for($i = 2; $i <= sqrt($n); ++$i) { if($prime[$i]) { for($j = $i*$i; $j <= $n; $j += $i) { $prime[$j] = false; } } } return array_keys(array_filter($prime)); }
Der kleine Satz von Fermat ist ein wichtiger Satz der Zahlentheorie, der verwendet werden kann, um zu bestimmen, ob eine Zahl eine Primzahl ist. Fermats kleiner Satz wird wie folgt ausgedrückt: Wenn p eine Primzahl und a eine beliebige ganze Zahl ist, dann ist a^(p-1)≡1(mod p).
Die spezifischen Schritte sind wie folgt:
Der Implementierungscode lautet wie folgt:
function is_prime($n) { if($n <= 1) { return false; } for($i = 0; $i < 10; ++$i) { $a = rand(1, $n-1); if(gcd($a, $n) != 1) { return false; } if(mod_pow($a, $n-1, $n) != 1) { return false; } } return true; } function gcd($a, $b) { return ($b == 0) ? $a : gcd($b, $a%$b); } function mod_pow($base, $exp, $modulus) { $result = 1; while($exp > 0) { if($exp % 2 == 1) { $result = ($result * $base) % $modulus; } $exp = $exp >> 1; $base = ($base * $base) % $modulus; } return $result; }
Die oben genannten sind zwei Methoden zum Finden von Primzahlen mithilfe von Skripten in PHP. Es ist zu beachten, dass die Screening-Methode bei der Lösung eines großen Bereichs von Primzahlen häufig effizienter ist als der kleine Satz von Fermat.
Das obige ist der detaillierte Inhalt vonVerwenden Sie ein Skript, um Primzahlen in PHP zu finden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!