快速排序是一种基于分治思想的排序算法,可以用PHP实现如下:
function quickSort($arr) {$length = count($arr);if ($length <= 1) {return $arr;}$pivot_key = floor($length / 2);$pivot = $arr[$pivot_key];$left = $right = [];foreach ($arr as $key => $value) {if ($key == $pivot_key) {continue;}if ($value < $pivot) {$left[] = $value;} else {$right[] = $value;}}return array_merge(quickSort($left), [$pivot], quickSort($right));}$arr = [3, 6, 8, 10, 1, 2, 1];$result = quickSort($arr);var_dump($result);在上面的代码中,quickSort函数实现了快速排序算法。首先判断数组长度是否小于等于1,如果是则直接返回数组。然后选择一个基准值(pivot),将小于基准值的元素放在左边,大于等于基准值的元素放在右边,再递归地对左右两部分数组进行排序,最后合并左右两部分数组并返回排序后的结果。
上一篇:android中viewflipper的用法是什么
下一篇:java volatile关键字的用法是什么
php









