Home >Backend Development >PHP Tutorial >PHP快速排序问题
$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 没有初值的话
你想想会是什么结果