快速排序算法:
1、选择一个基准数
2、小于基准数的放左边,大于基准数的放右边
3、利用递归的方法针对左边的数据进行快速排序,再对右边的数据进行快速排序
4、递归停止的条件:数组为空或者只有一个元素 时间复杂度为:O(nlogn),远小于选择排序
def quick_sort(list):
if(len(list) < 2):
return list
else:
base = list[0]
less = [i for i in list[1:] if i <= base]
greater = [i for i in list[1:] if i > base]
return quick_sort(less) + [base] + quick_sort(greater) if __name__ == "__main__":
list = [32, 13, 28, 5, 23, 56, 12, 78, 34]
result = quick_sort(list)
print(result)

最新文章

  1. iOS开发之多种Cell高度自适应实现方案的UI流畅度分析
  2. WinServer2003 文件夹共享 方法设置
  3. ECMA中的switch语句
  4. Spring中的SPEL
  5. ArrayList、HashTable、List、Dictionary的演化及如何选择使用
  6. Android selector item 属性大全(按钮按下不同效果)
  7. linux内存查看
  8. CentOS 安装jdk1.7 64位
  9. js内置对象处理-打印学生成绩单
  10. 最近在无线USB网卡投入比较大
  11. 第六次meeting会议
  12. 团队作业4——第一次项目冲刺(Alpha版本)11.18
  13. maven学习--1.项目结构及简单使用
  14. Java多线程(四)java中的Sleep方法
  15. hdoj:2028
  16. 初识Java框架
  17. ZOJ 1985 Largest Rectangle in a Histogram(刷广告)2010辽宁省赛
  18. 如何使用g++编译调用dll的c++代码
  19. pointcloud(点云)与mesh(面元)模型的区别
  20. Solr之functionQuery(函数查询)

热门文章

  1. java 获取的是本地的IP地址
  2. PHP FILTER_SANITIZE_STRIPPED 过滤器
  3. J2EE学习篇之--JDBC详解
  4. error LNK2019: 无法解析的外部符号 &quot;__declspec(dllimport) long __stdcall RtlGetVersion(struct _OSVERSIONINFOW
  5. Java-Class-FC:java.lang.StringBuilder
  6. mybatis 丢失字段
  7. VS2010 下C++使用UTF8编码
  8. csdn左侧个人栏目美化,css英文颜色大全,跑马灯效果,点击转到qq联系,点击转到发送邮件。
  9. Xen的半虚拟化(Paravirtualization)
  10. 安装jdk 并放在 /usr/java/default 目录下