コード 1:
コードをコピー コードは次のとおりです:
function Quicksort($str){
if(count($str)<=1) return $str;/ /if 数値が 1 より大きくない場合は、直接返します
$key=$str[0];//後で比較する値を取得します
$right_arr=array(); ($i =1;$iif($str[$i]< =$key)
$ left_arr[]=$str[$i];
else
$right_arr[]=$str[$i];
$left_arr=quicksort($left_arr);//再帰を実行します。 $right_arr=quicksort($ right_arr);
return array_merge($left_arr,array($key),$right_arr);// 左、中央、右の値を配列にマージします
}// 以下はテスト
$str=array(5,3, 8,2,5,9,7,2,1,4,0);
コード 2:
コードをコピー
コードは次のとおりです:
/* @quicksort*/ function QuickSort($left,$right,$arr){ $l = $left $r = $right; ;
$ピボット = $arr[($left+$ right)/2];
$temp = 0;
while($l$l++;
}
while($arr[ $r]>$pivot){
$r--;
if($l>=$r)
$temp = $arr[ $l];
$arr[$l] = $arr[$r] = $temp;
if($arr[$r]==$ ピボット) ++$l;
}
if($l==$r){
$r--;
if; left<$r){
quickSort($left, $r, $arr);
}elseif($right>$l){
quickSort($l, $right, $arr);
return $ああ、
}
}
http://www.bkjia.com/PHPjc/325921.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/325921.html
技術記事
コード 1: 次のようにコードをコピーします: ?php function Quicksort($str){ if(count($str)=1) return $str;//数値が 1 より大きくない場合は、直接 $key=$str を返します。 [0] ;//値を取得して後で使用します...