php中快速排序的原理是什么

php中快速排序的原理是什么?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

创新互联公司自2013年起,是专业互联网技术服务公司,拥有项目网站制作、成都做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元庐江做网站,已为上家服务,为庐江各地企业和个人服务,联系电话:13518219792

php有什么用

php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因为php是开源的,从而使得php经久不衰。

1.概念

快速排序(Quicksort)是对冒泡排序的一种改进。基本思想是:通过一趟排序将待排记录分割成独立的两部分,其中一部分的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行快速排序,整个排序过程可以递归进行,以达到整个序列有序的目的。

2.排序步骤

找到当前数组中的任意一个元素,作为标准,新建两个空数组,遍历整个数组元素,遍历到的元素比当前元素要小,那么放到左边的数组;如果要大,放到另外一个数组中。

递归思路

(1)递归点:如果两个数组的元素大于1,就需要再进行分解

(2)递归出口:数组元素变成1的时候

3.实例

<?php
// 快速排序
function quickOrder($arr)
{
    // 判断是否需要运行,下面要拿出一个中间值
    if (count($arr)<=1) {
        return $arr;
    }
    $middle = $arr[0]; // 中间值
    $left   = array();
    $right  = array();
    for ($i = 1; $i < count($arr); $i++) {
        if ($middle < $arr[$i]) {
            $right[] = $arr[$i];
        } else {
            $left[] = $arr[$i];
        }
    }
    // 递归排序划分好的2边数组
    $left = quickOrder($left);
    $right = quickOrder($right);
    return array_merge($left, array($middle), $right);
}
$arr = array(5, 2, 7, 6, 9, 3);
$res = quickOrder($arr);
var_dump($res);

看完上述内容,你们掌握php中快速排序的原理是什么的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!

当前题目:php中快速排序的原理是什么
本文URL:https://www.cdcxhl.com/article16/gocodg.html

成都网站建设公司_创新互联,为您提供企业建站定制开发电子商务网站收录微信公众号企业网站制作

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设