博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
排序之快速排序
阅读量:5897 次
发布时间:2019-06-19

本文共 752 字,大约阅读时间需要 2 分钟。

快速排序是通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。

 

/** * @param array $numbers 需要排序的数字组 * @return array **/function ks_sort($numbers){    if(($count=count($numbers)) > 0){        $left = $right = array();        for($i=1; $i<$count; $i++){            if($numbers[$i] < $numbers[0]){                $left[] = $numbers[$i];            }else{                $right[] = $numbers[$i];            }        }        return array_merge(ks_sort($left), array($numbers[0]), ks_sort($right));    }else{        return $numbers;    }}$numbers = array(63,6,98,54,88,5,89,16,59,10,31,28,1,61,59,66,91,19,10,38,22,63,16); //需要排序的数字var_dump(ks_sort($numbers));

 

 

 

 

 

转载于:https://www.cnblogs.com/liuensong/p/10140348.html

你可能感兴趣的文章
SQL 三种分页方式
查看>>
查看linux是ubuntu还是centos
查看>>
html video的url更新,自动清缓存
查看>>
IOS Xib使用——为控制器添加Xib文件
查看>>
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙步骤
查看>>
react 取消 eslint
查看>>
【11】ajax请求后台接口数据与返回值处理js写法
查看>>
Python菜鸟之路:Jquery Ajax的使用
查看>>
LeetCode算法题-Maximum Depth of Binary Tree
查看>>
sha1withRSA算法
查看>>
Vim和操作系统剪贴板交互
查看>>
Cox 教学视频5
查看>>
JVM类加载(4)—加载器
查看>>
public/private/protected的具体区别
查看>>
面试宝典——求一个字符串中连续出现次数最多的子串
查看>>
VMware Workstation虚拟机上网设置
查看>>
Jenkins持续集成学习-搭建jenkins问题汇总
查看>>
C#Note13:如何在C#中调用python
查看>>
Android介绍以及源码编译---Android源码下载
查看>>
SpringBoot集成redis缓存
查看>>