PHP实现快速排序

来源:互联网 发布:debian 安装nginx 编辑:程序博客网 时间:2024/06/05 17:30
<?phpfunction show($arr){    foreach ($arr as $v) {        echo $v." ";    }}function quicksort(&$arr,$low,$high){    if($low>=$high){        return;    }    $first = $low;    $last = $high;    $key = $arr[$first];    while ( $first < $last) {        while( $first < $last && $arr[$last] >= $key){            --$last;   //寻找右边第一个比key小的        }        $arr[$first] = $arr[$last];          while ( $first < $last && $arr[$first] <= $key) {            ++$first;  //寻找左边第一个比key大的        }        $arr[$last] = $arr[$first];    }    $arr[$first] = $key;    quicksort($arr,$low,$first-1);    quicksort($arr,$first+1,$high);    }$arr = range(1,10);shuffle($arr);echo "排序之前:";show($arr);    quicksort($arr,0,count($arr)-1);echo "<br/>排序之后:";show($arr);    
0 0
原创粉丝点击