用Python实现八大排序算法--直接选择排序
来源:互联网 发布:union mysql性能级别 编辑:程序博客网 时间:2024/06/01 23:27
一、选择排序概述
选择排序(Selection sort)是一种简单直观的排序算法,它的工作原理是每次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,知道全部待排序的数据元素排完。
算法基本思想:
n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果
算法分析:
(1) 关键字比较次数
在第i趟排序中选出最小关键字的记录,需要做n-i次比较,因此总的比较次数为n(n-1)/2=o(n^2)
(2) 记录移动次数
初始文件为正序时,移动次数为0
文件初态为反序时,每趟排序均要执行交换操作,总的移动次数最大值为3(n-1)
平均时间复杂度为 O(n^2)
(3)稳定性:不稳定
二、Python实现
def SelectSort(lists): count=len(lists) for i in range(0,count): for j in range(i+1, count): if lists[i] > lists[j]: lists[i] , lists[j] = lists[j] , lists[i] print("===========") print(i,j) print(lists)if __name__ == "__main__": lists = [3, 5, 4, 2, 1, 6] print(lists) SelectSort(lists)
运行结果如下所示
0 0
- 用Python实现八大排序算法--直接选择排序
- 八大排序算法之直接选择排序
- 八大排序算法--直接选择排序
- 【排序】用Python实现八大排序算法--堆排序
- Python实现八大排序算法
- 八大排序算法PYTHON实现
- 八大排序算法(Python实现)
- 八大排序算法(四) 直接选择排序
- Python:直接选择排序算法
- 用Python实现八大排序算法--插入排序
- 用Python实现八大排序算法--冒泡排序
- 用Python实现八大排序算法--快速排序
- 用Python实现八大排序算法--归并排序
- 用Python实现八大排序算法--堆排序
- 实现直接选择排序算法
- python八大排序算法
- 八大排序算法-Python
- 八大排序算法 python
- Annotation注解的介绍和使用 自定义注解
- linux下火狐浏览器安装flash
- css选择器(2)
- 数据库设计步骤
- druid数据库连接池配置
- 用Python实现八大排序算法--直接选择排序
- linux重启数据库
- 使用GitHub对代码进行版本控制、托管
- java银行卡类的部分编写 含异常运用
- maven项目导入IntelliJ IDEA后,是怎么下载jar包到本地的?即InteliJ Idea怎么导入maven工程?
- WWDC2016 Session笔记 - iOS 10 UICollectionView新特性
- Hadoop_HDFS_hdfs 文件系统操作指令
- Javascript 错误处理:try throw catch
- 如何加速推送SCCM Agent到客户端机器