思路分析:快速排序是在冒泡排序的基础上做的升级,以第一个元素为标尺,对无序数组进行分割,大的部分组成一个临时数组,小的部分组成另一个临时数组,再分别将两个临时数组递归分割,直至只剩一个元素,将所有临时数组(只剩了单个元素),进行组合,就合成了新的有序数组。
$arr = array(9,3,4,1,7,10,8,2,5,6);function part_sort($array){$len=count($array);if($len<=1){return $array;}$lpart = array();$rpart = array();for($i=1;$i<$len;$i++){if($array[$i]<=$array[0]){$lpart[]=$array[$i];}else{$rpart[]=$array[$i];}}$lpart = part_sort($lpart);$rpart = part_sort($rpart);$arr = array_merge($lpart,array($array[0]),$rpart);return $arr;}echo "<pre>";print_r(part_sort($arr));echo "</pre>";
快速排序原理及PHP实现
本文介绍了快速排序算法的基本思想,它是冒泡排序的一种优化升级。通过对数组进行分割,形成两个临时数组,分别递归地进行排序,最终将这些单元素数组合并成一个有序数组。文章还提供了一个使用PHP实现的具体示例。
758

被折叠的 条评论
为什么被折叠?



