首页 > 代码库 > php实现快速排序
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);
?>