0
<?php
 // Recursive version:
function quicksort($seq) {
if(!count($seq)) return $seq;
$pivot= $seq[0];
$low = $high = array();
$length = count($seq);
for($i=1; $i < $length; $i++) {
    if($seq[$i] <= $pivot) {
        $low [] = $seq[$i];
    } else {
        $high[] = $seq[$i];
    }
}
return array_merge(quicksort($low), array($pivot), quicksort($high));
}
//Let's try some examples
$myarr = array(25,5,3,4,17,1,88,8);
$final = quicksort($myarr);
print_r($final);
$final = quicksort($final);
print_r($final);
$strarray = array("mark","wes","mj","bruce","ming","lance","vince");
var_dump(quicksort($strarray));

?>

私はphpを初めて使用し、このループを100回以上行うにはどうすればよいか疑問に思っていました。私は配列 2500 の int 要素を持っています。これをすばやく並べ替えて結果を表示する必要がありますが、100 要素の後、ループの最大エラーが発生し始めます....何か考えはありますか?

4

1 に答える 1

0

はい。組み込みのソート関数のいくつかを使用します。例:sort()。完全なリストを確認するには、Sorting Arraysマニュアルを確認してください。

于 2013-03-07T14:44:51.967 に答える