Es gibt eine Funktion zum Erraten, was Benutzern gefällt. Benutzer können darauf klicken, um eine Gruppe zu ändern und den empfohlenen Inhalt zu aktualisieren.
Fragen Sie zuerst die Datenbank ab, um die ersten 1000 Daten zu erhalten, und entfernen Sie dann zufällig 4 Daten.
Nachdem ich das Programm fertig geschrieben hatte, stellte ich fest, dass es sehr langsam lief. Jedes Mal, wenn ich es aktualisierte, musste ich lange warten, bis es herauskam.
Der Code lautet wie folgt:
$arr = range(1, 100000); $start = time(); for($i = 0; $i < 100; $i ++){ $key = mt_rand(0, 99999 - $i); $result[] = $arr[$key]; unset($arr[$key]); sort($arr); } $end = time(); echo $end - $start;
Die obige Schreibmethode muss nach der Verwendung von unset sortiert werden.
Unset löscht nur den Schlüsselwert, der Schlüssel bleibt jedoch erhalten.
Das verbesserte Schreiben ist wie folgt:
$arr = range(1, 100000); $start = time(); for($i = 0; $i < 100; $i ++){ $key = mt_rand(0, 99999 - $i); $result[] = array_splice($arr, $key, 1); } $end = time(); echo $end - $start;
Die Effizienz wurde um das 3-4-fache erhöht.