PHP快速排序算法

快速排序(Quicksort)是对冒泡排序的一种改进

<?php
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;
    }
}

$arr=[1,5,3,6,7,2,66,2,34];

print_r(quickSort($arr));

 

posted @ 2018-08-08 08:55  苟富贵,无相忘  阅读(111)  评论(0编辑  收藏  举报