In diesem Artikel werden hauptsächlich zwei Beispiele für schnelle Sortieralgorithmen in PHP vorgestellt. Dieser Artikel gibt direkt den Implementierungscode an, der mit der rekursiven Methode bzw. der iterativen Methode implementiert wird
Obwohl in PHP solche Webanwendungen entwickelt werden, legen wir nicht allzu viel Wert auf die Bedeutung der Sortierung, da PHP selbst bereits über leistungsstarke Sortierfunktionen wie sort() verfügt. In einigen wichtigen Fällen, z Gelegentlich möchte ich Sortieralgorithmen verwenden. Die Auswirkungen können nicht ignoriert werden. Hier stellen wir die rekursive Sortierung und die iterative Sortierung vor.
Rekursive Methode:
/** * 递归法实现的快速排序 */ function quicksort($seq) { $k = $seq[0]; $x = array(); $y = array(); for($i=1; $i< $_size; $i++) { if($seq[$i] <= $k) { $x[] = $seq[$i]; } else { $y[] = $seq[$i]; } } $x = quicksort($x); $y = quicksort($y); return array_merge($x, array($k), $y); } else { return $seq; } }
Iterative Methode:
/** * 迭代法的快速排序 */ function quicksortx(&$seq) { $stack = array($seq); $sort = array(); while ($stack) { $arr = array_pop($stack); if(count($arr) <= 1) { if(count($arr) == 1) { $sort[] = &$arr[0]; } continue; } $k = $arr[0]; $x = array(); $y = array(); $_size = count($arr); for($i =1 ;$i < $_size; $i++) { if($arr[$i] <= $k) { $x[] = &$arr[$i]; } else { $y[] = &$arr[$i]; } } !empty($y) && array_push($stack, $y); array_push($stack, array($arr[0])); !empty($x) && array_push($stack, $x); } return $sort; }
Verwendung:
/** *产生一个随机数组 */ for($i=0;$i<5;$i++){ $testArr[]=mt_rand(0,100); } var_dump($testArr); var_dump(quicksort($testArr)); var_dump(quicksortx($testArr));
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:
PHP-Implementierung von Methoden zum Hochladen von Bildern auf Client- und Serverseite
PHP-Code-Implementierung zur Steuerung des Dateidownloads Geschwindigkeit
php verwendet ein Array, um das Dropdown-Listenfeld zu füllen
Das obige ist der detaillierte Inhalt vonSchnelle Sortierung durch PHP-Rekursionsmethode implementiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!