选择和快速排序
//选择排序
public function index(){
$arr = array(10,5,245,23,543,67,45,37,86,235,25,15);
for($i = 0;$i < count($arr) - 1;$i++){
$minindex = $i;
for($j = $i + 1;$j < count($arr);$j++){
if($arr[$j] < $arr[$minindex]){
$minindex = $j;
}
}
if($i != $minindex){
$temp = $arr[$i];
$arr[$i] = $arr[$minindex];
$arr[$minindex] = $temp;
}
}
print_r($arr);
}
//快速排序
public function quicksort($arr){
if(!is_array($arr)){
return false;
}
if(count($arr) < 2){
return $arr;
}
$index = $arr[0];
$left = array();
$right = array();
for($i = 1;$i < count($arr);$i++){
if($arr[$i] <= $index){
$left[] = $arr[$i];
}else{
$right[] = $arr[$i];
}
}
$left = $this->quicksort($left);
$right = $this->quicksort($right);
$res = array_merge($left,array($index),$right);
return $res;
}