<?php
/**
* @param array $array
* @return array
* @author linzhiweng
* @abstract 快速排序,利用递归将数据排序
* @version 2017.05.31
*/
function quickSort($array)
{
if(count($array) <= 1) return $array;
$key = $array[0];
$left_array = $right_array = array();
for ($i=1;$i<count($array);$i++)
{
if($array[$i] <= $key)
{
$left_array[] = $array[$i];
}
else
{
$right_array[] = $array[$i];
}
}
$left_array = quickSort($left_array);
$right_array = quickSort($right_array);
return array_merge($left_array,array($key),$right_array);
}
$arr = array(1,5,6,4,23,68,45,87,296,58,7,0);
var_dump(quickSort($arr));
经典快速排序法,利用递归将数据排序
最新推荐文章于 2023-09-14 20:49:02 发布