时间:2021-07-01 10:21:17 帮助过:36人阅读
<?php //快速排序 function quicksort($arr) { //结束条件 //判断当前数组是否需要排序 if(count($arr)<=1){ return $arr; } $num = $arr[0]; //进行排序 定义标尺 $left_array = []; //左边数组 $right_array = [];//右边数组 for($i = 1;$i<count($arr);$i++){ if($num>$arr[$i]){ $left_array[] = $arr[$i];//比当前数小放到左边数组 } else { $right_array[] = $arr[$i];//比当前数大放到右边数组 } } //递归 调用自身 $left_array = quicksort($left_array); $reght_array = quicksort($right_array); //合并数组 返回排序好的数组 return array_merge($left_array,array($num),$reght_array); } //需要排序的数组 $arr = array(2,3,5,6,9,8,4,1); //调用递归 print_r(quicksort($arr));
相关推荐:
PHP算法之桶排序
以上就是php算法之 快速排序的详细内容,更多请关注Gxl网其它相关文章!