<?php
//二分法 快速排序
$arr =array(1,33,55,16,99,45);
function quicksort($arr){
$length = count($arr);
if($length<=1){
return $arr;
}else{
$left = array();
$right = array();
for($i=1;$i<$length;$i++){
if($arr[$i]<$arr[0]){
$left[]=$arr[$i];
}else{
$right[]=$arr[$i];
}
}
$left = quicksort($left);
$right = quicksort($right);
return array_merge($left,array($arr[0]),$right);
}
}
$result = quicksort($arr);
echo "<pre>";
print_r($result);
echo "</pre>";
//二分法 快速排序
$arr =array(1,33,55,16,99,45);
function quicksort($arr){
$length = count($arr);
if($length<=1){
return $arr;
}else{
$left = array();
$right = array();
for($i=1;$i<$length;$i++){
if($arr[$i]<$arr[0]){
$left[]=$arr[$i];
}else{
$right[]=$arr[$i];
}
}
$left = quicksort($left);
$right = quicksort($right);
return array_merge($left,array($arr[0]),$right);
}
}
$result = quicksort($arr);
echo "<pre>";
print_r($result);
echo "</pre>";