<?php
$arr
=
array
(25,133,452,364,5876,293,607,365,8745,534,18,33);
function
quick_sort(
$arr
)
{
// 判断是否需要继续
if
(
count
(
$arr
) <= 1) {
return
$arr
;
}
$middle
=
$arr
[0];
// 中间值
$left
=
array
();
// 小于中间值
$right
=
array
();
// 大于中间值
// 循环比较
for
(
$i
=1;
$i
<
count
(
$arr
);
$i
++) {
if
(
$middle
<
$arr
[
$i
]) {
// 大于中间值
$right
[] =
$arr
[
$i
];
}
else
{
// 小于中间值
$left
[] =
$arr
[
$i
];
}
}
// 递归排序两边
$left
= quick_sort(
$left
);
$right
= quick_sort(
$right
);
// 合并排序后的数据,别忘了合并中间值
return
array_merge
(
$left
,
array
(
$middle
),
$right
);
}
原文:https://www.cnblogs.com/jiaoda/p/11469782.html