def quick_sort(array,left,right):
if left>=right:
return
low=left
high=right
key=array[low]#设置基准数
while left<right:
while left<right and array[right]>=key:#如果列表后边的数,比基准数大或相等,则前移一位直到有比基准数小的数出现
right-=1
array[left]=array[right]#如找到,则把第j个元素赋值给第个元素i,此时表中i,j个元素相等
while left<right and array[left]<=key:#同样的方式比较前半区
left+=1
array[right]=array[left]
array[right]=key#做完第一轮比较之后,列表被分成了两个半区,并且i=j,需要将这个数设置回base
print(array)
# 递归前后半区
quick_sort(array,low,left-1)
quick_sort(array,left+1,high)
return array
print(quick_sort([2,13,6,11,1,5,16,22,7],0,8))

最新文章

  1. c#解析XML到DATASET及dataset转为xml文件函数
  2. golang 文件操作
  3. C#指定时间和当前时间的相差的月份、天数
  4. Entity Framework 实体框架的形成之旅--Code First的框架设计(5)
  5. Web API在OWIN下实现OAuth
  6. LVS+MYCAT读写分离+MYSQL同步部署手册(第三版)
  7. beetle 2.7海量消息广播测试
  8. Java 加密 MD5
  9. H5小内容(三)
  10. BIOS和CMOS的联系与区别
  11. 开始Java学习(Java之负基础实战)
  12. jquery源码 DOM加载
  13. Socket类 以及 ServerSocket类 讲解
  14. Linux下载_Linux系统各种版本ISO镜像下载(redhat,centos,oracle,ubuntu,openSUSE)
  15. 阿里云服务器ftp连接后21端口无法使用的问题
  16. bounding box的简单理解
  17. SDWebImage源码解析
  18. HDFS详解
  19. MATLAB:图像乘除法运算(immultiply、imdivide函数),同时比较双精度类型图像运算结果
  20. Spring Boot (#1 quick start)

热门文章

  1. js的浅拷贝和深拷贝和应用场景
  2. CentOS关闭系统不必要的端口
  3. 浅谈移动端设备标识码:DeviceID、IMEI、IDFA、UDID和UUID -费元星
  4. 【奇技淫巧】使用 SSH 转发 Sock5 流量
  5. hdu5993/2016icpc青岛L
  6. Golang中的error类型
  7. kafka学习(六)
  8. Linux-Spark-Hadoop-Hive安装配置
  9. 一些重温CSS需要注意的小细节
  10. C#获取当前路径7中方法