首页  >  文章  >  后端开发  >  php之quicksort 快速排方法实例

php之quicksort 快速排方法实例

小云云
小云云原创
2018-03-10 09:18:281460浏览

本文主要和大家分享php之quicksort 快速排方法实例,希望能帮助大家更好掌握如何使用quicksort。

<?phpfunction quickSort($arr){
    //先判断是否需要继续进行
    $length = count($arr);    if ($length <= 1) {        return $arr;
    }    //选择第一个元素作为基准
    $base_num = $arr[0];    //遍历除了标尺外的所有元素,按照大小关系放入两个数组内

    //初始化两个数组
    $left_array = [];   //小于基准的
    $right_array = [];  //大于基准的

    for ($i = 1; $i < $length; $i++) {        if ($base_num > $arr[$i])            //放入左边数组
            $left_array[] = $arr[$i];        else
            //放入右边
            $right_array[] = $arr[$i];

    }    //再分别对左边和右边的数组进行相同的排序处理方式递归调用这个函数
    $left_array = quickSort($left_array);    $right_array = quickSort($right_array);    //合并
    return array_merge($left_array, array($base_num), $right_array);
}$arr1 = [1, 4, 5, 8, 2, 12, 23, 17];$arr2 = quickSort($arr1);

var_dump($arr2);

相关推荐:

php冒泡、选择、插入和快速排序算法分享

Js快速排序方法实例

PHP实现快速排序的方法示例

以上是php之quicksort 快速排方法实例的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn