ja, könnte auch ins ot rein - hier ist ja nichts los
habe mal ein altes script von mir rausgekramt.
gesucht: 5 eindeutige zufallszahlen zwischen 1 und 15
bedingung: maximale performance bei z.b. 10.000 schleifendurchläufen
wer hat ein schnelleres script?
habe mal ein altes script von mir rausgekramt.
gesucht: 5 eindeutige zufallszahlen zwischen 1 und 15
bedingung: maximale performance bei z.b. 10.000 schleifendurchläufen
wer hat ein schnelleres script?
PHP-Code:
function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
// Stoppuhr anschmeißen
$time1=getmicrotime();
// CODE ========================================================================
$i=0;
while($i<10)
{
$i++;
$k=0;
while($k<10000)
{
$k++;
// Zufallszahlen-Generator initialisieren
srand((double)microtime()*1000000);
// Auf gut Glück fünf Zufallszahlen generieren
$r0=rand(1,15);
$r1=rand(1,15);
$r2=rand(1,15);
$r3=rand(1,15);
$r4=rand(1,15);
// Nach dieser While-Schleife sind die ersten drei Zufallszahlen eindeutig
while($r0==$r1||$r1==$r2||$r0==$r2)
{
$r0=rand(1,15);
$r1=rand(1,15);
$r2=rand(1,15);
}
// Nach dieser While-Schleife sind die ersten vier Zufallszahlen eindeutig
while($r0==$r3||$r1==$r3||$r2==$r3)
{
$r3=rand(1,15);
}
// Nach dieser While-Schleife sind alle Zufallszahlen eindeutig
while($r0==$r4||$r1==$r4||$r2==$r4||$r3==$r4)
{
$r4=rand(1,15);
}
}
// Mal testweise den ganzen Müll ausgeben (10.000 Durchläufe)
echo "$r0, $r1, $r2, $r3, $r4 <br>";
}
// =============================================================================
// Stoppuhr stoppen (wie schon der Name sagt)
$time2=getmicrotime();
// Die fantastische Laufzeit des genialen Algorithmus ausgeben
echo "<br>RUNTIME: ";
echo $time2-$time1;
Kommentar