php 快速排序法

function quicksort(array $arr = array())
{
$len = count($arr);
if ($len > 1) {
$key = $arr[0];
$l_arr = array();
$r_arr = array();
for ($i = 1; $i < $len; $i++) {
if ($arr[$i] < $key) {
$l_arr[] = $arr[$i];
} else {
$r_arr[] = $arr[$i];
}
}

$l_arr = quicksort($l_arr);
$r_arr = quicksort($r_arr);
$arr = array_merge($l_arr, array($key), $r_arr);
return $arr;
} else {
return $arr;
}
}
posted @ 2016-07-14 17:53  Timothy_lai  阅读(226)  评论(0编辑  收藏  举报