快速排序的基本思想是
1、数组中取出一个数作为基准
2、其它数与基准数做比较,大的数放右边,小于或等于放到左边
3、再对左右区间重复第二步,直到各区间只有一个。
<?php
function quickSort($arr){
$c = count($arr);
if($c <= 1) return $arr; //递归出口
$left = $right = [];
for ($i=1; $i < $c; $i++) {
if($arr[$i] > $arr[0]){
array_push($right, $arr[$i]);
}else{
array_push($left, $arr[$i]);
}
}
$left = quickSort($left);
$right= quickSort($right);
return array_merge($left,[$arr[0]],$right);
}
?>