python排序算法-冒泡和快速排序,解答阿里面试题
2024-08-28 19:42:38
''常见的排序算法\
插入排序/希尔排序/直接排序/堆排序
冒泡排序/快速排序/归序排序/基数排序
给定一个列表,将这个列表进行排序,要求:> 时间复杂度要小于O(n^2)
复杂度:
1.时间复杂度: 指 算法在计算的过程中,所需要的计算工作量
2.空间复杂度: 指 算法在计算过程中,所需要的内存空间
常见的时间复杂度:
常数阶O(1),对数阶O(log2n),线性阶O(n)
线数对数阶O(nlogn2n),平方阶O(n^2),立方阶O(n^3)
随着问题的规模n,不断的增大,上述的时间复杂度就不断增大
意味着算法的执行效率越低
'''
#冒泡排序的实现
#思路: 相邻的两个数字比较,大的向下沉,最后一个元素是最大的
#时间复杂度O(n^2)
#快速排序
#递归+推导式
# 列表中取出第一个元素,作为标准.把比第一个元素小的都放在左边
# 把比第一个元素大的,都放在右侧
# 递归完成时,就是排序结束的时候
# 快排的时间复杂度 O(nlong2n)
最新文章
- C#字符串的方法
- HTML中让表单input等文本框为只读不可编辑的方法
- shell中的语法(1)
- c#中的math类
- show engine innodb status\G
- java基础知识回顾之java Thread类学习(三)--java线程实现常见的两种方式实现好处:
- 如何给10^7个数据量的磁盘文件排序--bitset
- Warning: Function created with compilation errors!
- session与cookie的差别
- OpenCV中的结构体、类与Emgu.CV的对应表
- WPF ”真正的“高仿QQ
- oracle、instantclient以及plsql安装包
- day43-python消息队列二-queue模块
- Tensorflow学习笔记2019.01.03
- You are my brother
- Golang pprof详解
- Luogu2792 JSOI2008 小店购物 最小树形图
- iOS一段文字设置多种颜色格式
- Django F()表达式
- Intellij-怎么避免import.*包,以及import包顺序问题
热门文章
- CCNA 之 一 网络基础
- 【xinsir】githook之precommit分享
- 禁止html复制文本
- 2019牛客暑期多校训练营(第一场) - E - ABBA - 贪心 - dp - 组合
- Windows 下 MySQL 备份脚本
- ";==";、equals、hashCode之间的区别
- Splay平衡树入门小结
- 无法用另一台电脑上的navicat链接主机数据库lost connection toMYSQl server at ";handshake";:reading inital communication packet,system error:34
- HTML5知识点总结(一)
- 接口上传base64编码图片