PHP快速排序-创新互联

描述

快速排序算法是对冒泡排序算法的改进,其基本思想是通过设置一个初始的中间值,来将需要排序的数组分成3部分:小于中间值的左边数组,中间值,大于中间值的右边数组,使用递归用相同的方式来排序左边和右边,最后合并数组。

目前成都创新互联公司已为上1000+的企业提供了网站建设、域名、网络空间、绵阳服务器托管、企业网站设计、铜川网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。示例
function sortQuick($array)
    {
        if (count($array)< 2) {
            return $array;
        }
        //基准值,一般取数组第一个元素
        $key = $array[0];
        //创建临时数组,以基准值为分界线,大于基准值的放在右侧,小于基准值的放在左侧
        $left_arr = array();
        $right_arr = array();
        //循环数组与基准值比较
        for ($i = 1; $i< count($array); $i++) {
            // 降序 将<= 改为 >即可
            if ($array[$i]<= $key) {
                $left_arr[] = $array[$i];
            } else {
                $right_arr[] = $array[$i];
            }
        }
        //递归,将左右数组排序
        $left_arr = $this->sortQuick($left_arr);
        $right_arr = $this->sortQuick($right_arr);
        //将排好序的临时数组合并
        return array_merge($left_arr, array($key), $right_arr);
    }

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


当前题目:PHP快速排序-创新互联
本文来源:http://pwwzsj.com/article/ddscsp.html