php冒泡排序和快速排序

时间:2024-01-20 22:54:15
如有错误,请指出...
//快速排序(array_merge整合数组)
function quick_sort($arr){
$num = count($arr);
if($num <= 1){
return $arr;
}
$key = $arr[0];
$left_arr = $right_arr = array();
for ($i = 1; $i < $num; $i++){
if($arr[$i] > $key){
$right_arr[] = $arr[$i];
}else{
$left_arr[] = $arr[$i];
}
}
$left_arr = quick_sort($left_arr);
$right_arr =quick_sort($right_arr);
return array_merge($left_arr,array($key), $right_arr);
}
//冒泡
function bubble_sort($arr){
$num = count($arr);
if($num <= 1){
return $arr;
}
for ($i = 0; $i < $num - 1; $i++){
for($j = 0; $j < $num - 1 - $i; $j++){
if ($arr[$j] < $arr[$j + 1]){
$a = $arr[$j];
$arr[$j] = $arr[$j + 1];
$arr[$j + 1] = $a;
}
}
}
return $arr;
}