function quickSort($array){
// 判断是否需要运行
if(!isset($array[1])) {return $array}; //或者 if (count($array) <= 1) { return $array; }
$mid = $array[0]; //获取一个用于分割的关键字,一般是首个元素
$leftArray = array();
$rightArray = array();
foreach($array as $v) {
if($v > $mid) { $rightArray[] = $v }//把比$mid大的数放到一个数组里
else {$leftArray[] = $v } //把比$mid小的数放到另一个数组里
}
$leftArray = quickSort($leftArray); //把比较小的数组再一次进行分割
$rightArray = quickSort($rightArray); //把比较大的数组再一次进行分割
return array_merge($leftArray,array($mid) ,$rightArray); //组合两个结果 //把分割的元素加到小的数组后面,不能忘了它哦
}