1.php
function quickSort($arr)
{
$len = count($arr);
// 设定结束条件
if($len <= 1){
return $arr;
}
// 选择第一个元素作为基准
$pivot = $arr[0];
// 初始化左数组和右数组
$left = $right = [];
// 遍历基准意外的其他元素,按照大小放入左右
for ($i = 1; $i < $len; $i++) {
if($arr[$i] < $pivot){
$left[] = $arr[$i];
}else{
$right[] = $arr[$i];
}
}
// 再分别对左右数组排序
$left = quickSort($left);
$right = quickSort($right);
// 合并基准数组和左右数组
return array_merge($left, array($pivot), $right);
}
本文为看恩吧原创文章,转载无需和我联系,但请注明来自knsay.com