## 快速排序 ``` //快速排序 $ar=array(4,3,2,8,9); function quick($arr){ $left=array(); $right=array(); //如果数组小于1,直接返回 if(count($arr)<=1){ return $arr; }else{ //取第一个值为基准,比它小的放左边数组,反之右 for ($i=0; $i < count($arr); $i++) { if($arr[0]>$arr[$i]){ $left[]=$arr[$i]; }else{ $rught[]=$arr[$i]; } } } //把值传入数组继续执行,递归 $left1=quick($left); $right1=quick($right); //返回拼接好的数组 return array_merge($left1.array($arr[0]).$right1) } return array_merge([2,3].[4].[8,9]); // 1.quick([4,3,2,8,9]); // 2.quick([3,2]); // 3.quick([2]); ```