php实现快速排序

<?php
/**
 * 快速排序
 *
 * @param array $array
 * @return array
 */
function Qsort($array) {
    if (!is_array($array) || empty($array)) {
        return array();
    }
    $len = count($array);
    if($len <= 1){
        return $array;
    }
    $key = $array[0];
    $left = array();
    $right = array();
    for($i = 1; $i < $len; $i++) {
        if ($array[$i] <= $key) {
            $left[] = $array[$i];
        } else {
            $right[] = $array[$i];
        }
    }
    //print_r($left);exit;
    $left = Qsort($left);
    
    $right = Qsort($right);
    //print_r($key);exit;
    //print_r(array_merge($left, array($key), $right));echo "<br>";
    return array_merge($left, array($key), $right);
}
$array = array(29,21,3,234,57,76,6,74);
$result = Qsort($array);
print_r($result);
?>

php实现快速排序,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。