排序算法------快速排序
原理
获取第一个数据
将数据分为左右两部分,左边的全部比第一个数小或者相等,右边全部比第一个数数大(递归)
function quickSort(&$arr){
if(count($arr)>1){
$k=$arr[0];//获取第一个
$x=array();
$y=array();
$_size=count($arr);//数组个数
for($i=1;$i<$_size;$i++){
if($arr[$i]<=$k){
$x[]=$arr[$i];
}elseif($arr[$i]>$k){
$y[]=$arr[$i];
}
}
$x=quickSort($x);
$y=quickSort($y);
return array_merge($x,array($k),$y);
}else{
return$arr;
}
}
来源转自:http://www.cnblogs.com/jingmoxukong/p/4303289.html

浙公网安备 33010602011771号