$arr=array(4,1,9,2,3);function quick($arr){ if ( count($arr)<=1) { return $arr; } for ($i=1; $i < count($arr); $i++) { if ($arr[0]<$arr[$i]) { $right[]=$arr[$i]; }else{ $left[]=$arr[$i]; } } $right1=quick($right); $left1=quick($left); return array_merge($left1,array($arr[0]),$right1);}var_dump(quick($arr));
$arr=array(4,1,9,2,3);print_r(quick($arr));function quick($arr){ if ( count($arr)<=1) { return $arr; } $left = array(); $righe = array(); for ($i=1; $i < count($arr); $i++) { if ($arr[0]<$arr[$i]) { $right[]=$arr[$i]; }else{ $left[]=$arr[$i]; } } $right1=quick($right); $left1=quick($left); return array_merge($left1,array($arr[0]),$right1);}
Array( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 9)何が違うのかは自分の目で確かめてください
$left と $right に初期値がない場合
結果がどうなるかを考えてください