sorted_一个函数秒杀冒泡排序算法和选择排序
sorted一招杀a = [3,9,12,4,5,7,8,110]print(sorted(a,reverse=True))# true为降序print(sorted(a,reverse=False))# revers= false为升序print(sorted(a))#默认是false升序排列 Bubble_sort下面看看坑死人无数的冒泡排序内循环和外循环每次循环依次比较大小并来回挪坑,直到把目标值放入设定坑再剩下的那堆继续如上操作圈复杂度O(n²)
import timedef bubble_sort(a): time1 = time.time() for i in range (len(a)-1,0,-1): for j in range (i): if a[j] > a[j+1]: a[j],a[j+1] = a[j+1],a[j] time2 = time.time() print(a) print(time2 - time1)a = [9,15,7,2,1]bubble_sort(a)
select_sort优化一下下,因为有人说读比写节约资源,那么选择排序登台我每一轮找最值,然后只交换最值与既定坑值圈复杂度还是O(n²)
#比较n-1次;最多交换n-2次# 算法不稳定,优势较冒泡读比写节约资源'''首先在未排序的序列中找到最大(小)元素存放到排序序列的起(终)位置再从剩余未排序元素中继续寻找最大(小)元素,然后放在已排序序列的末尾或前面~'''def select_sort(a): for i in range (len(a)-1): #动态标记最小索引位置 min_index = i for j in range (i+1,len(a)): if a[j] < a[min_index]:#每一轮找一次最小值,找到后记录下最小值索引值 min_index = j if min_index != i:#如果最小值索引值与预设不一致,将预设位数与本轮比较最小值做交换 a[i],a[min_index] = a[min_index],a[i] return aa = [99,123,2,6,9527]select_sort(a)print(a)
转载于:https://www.cnblogs.com/digitalNatives/p/10582807.html
sorted_一个函数秒杀冒泡排序算法和选择排序相关推荐
- 冒泡排序算法和选择排序算法比较
冒泡排序算法详细内容见→冒泡排序算法. 选择排序算法详细内容见→选择排序算法. 冒泡排序算法和选择排序算法的区别: 冒泡排序是比较相邻位置的两个数:而选择排序是按顺序比较,找出最大值或者最 ...
- java 合并排序算法、冒泡排序算法、选择排序算法、插入排序算法、快速排序...
算法是在有限步骤内求解某一问题所使用的一组定义明确的规则.通俗点说,就是计算机解题的过程.在这个过程中,无论是形成解题思路还是编写程序,都是在实施某种算法.前者是推理实现的算法,后者是操作实现的算法. ...
- 【java进阶06:数组】使用一维数组模拟栈数据结构 使用二维数组模拟酒店,酒店管理系统 Arrays工具类 冒泡排序算法、选择排序算法、二分法
目录 数组 二维数组 总结 作业 Arrays工具类 数组 数组总结 及 静态初始化一维数组 /* Array:1.java语言中的数组是一种引用数据类型,不属于基本数据类型,数组的父类是Object ...
- 函数模板案例_利用函数模板封装一个排序的函数,可以对不同数据类型数组进行排序 排序规则从大到小,排序算法为选择排序 分别利用char数组和int数组进行测试
案例描述: 利用函数模板封装一个排序的函数,可以对不同数据类型数组进行排序 排序规则从大到小,排序算法为选择排序 分别利用char数组和int数组进行测试 #include <iostream& ...
- 【排序算法】冒泡排序、简单选择排序、直接插入排序比较和分析
[排序算法]冒泡排序.简单选择排序.直接插入排序比较和分析 写在前面: 本文简单介绍了冒泡排序.简单选择排序.直接插入排序,并对这三种排序进行比较,入参都是80000个随机数,比较算法耗时.进一步,我 ...
- 排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序...
先推荐一篇关于排序算法的文章:http://www.cppblog.com/guogangj/archive/2009/11/13/100876.html 本文思路部分来源于上篇文章,但测得的结果似乎 ...
- python中怎么比较两个列表的大小_python中对列表元素大小排序(冒泡排序法,选择排序法和插入排序法)—排序算法...
前言 排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列.本文主要讲述python中经常用的三种排序算法,选择排序法 ...
- java 快速排序算法简单_排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序......
先推荐一篇关于排序算法的文章:http://www.cppblog.com/guogangj/archive/2009/11/13/100876.html 本文思路部分来源于上篇文章,但测得的结果似乎 ...
- python中对列表元素大小排序(冒泡排序法,选择排序法和插入排序法)—排序算法
前言 排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列.本文主要讲述python中经常用的三种排序算法,选择排序法 ...
最新文章
- JSON WEB TOKEN(JWT)的分析
- 网络编程应用:基于TCP协议【实现文件上传】--练习
- 【推荐一位Python大佬】 从程序员到创业者,再到自由职业
- React开发(170):ant design datapicker限制选择时间
- JBoss - 调整JVM内存 -Xms512m -Xmx1024m
- DSP28335定时器简易秒表设计
- 计算机硬件清理步骤,联想笔记本电脑清理灰尘详细步骤
- Glide库里,藏了一套你心心念念的GIF压缩工具集
- 关于vmware无法访问互联网
- Android课程设计,生活记事本
- 2021-最新Web前端经典面试试题及答案-史上最全前端面试题(含答案)---JavaScript篇
- Git如何保留两地并行开发的提交
- es linux下使用api进行es故障操作处理
- 完全平方数(C语言,调用函数)
- 读《企业中的开放源代码》有感
- 原创小说 - 爱人失踪(连载 中部)
- LaTeX入门_刘海洋_电子工业出版社_案例代码1
- 据说富翁一般有7种收入来源。有哪些简单的,在你睡觉时也能带来收入的方法呢?
- 【Android App】获取照片里的位置信息及使用全球卫星导航系统(GNSS)获取位置实战(附源码和演示 超详细)
- oracle10g卸载不了,oracle10g安装,卸载
热门文章
- 【POJ - 1364】King(差分约束判无解)
- 【POJ - 2337】Catenyms(欧拉图相关,欧拉通路输出路径,tricks)
- 【蓝桥杯官网试题 - 真题训练】生命之树(树形dp)
- 【HihoCoder - 1851】D级上司 (树形图,dfs)
- 【HDU - 1266 】Reverse Number(模拟,数字分位数处理)
- 未来计算机的功能猜想,全方位猜想,未来计算机发展详细预测
- Win7+VMware10.0+CentOS 6.4+Tomcat,Win7访问不了CentOS6.4上的Tomcat
- 学习笔记11-C语言-指针
- 求数字序列中的第n位对应的数字
- go语言快速刷《程序员面试金典》(2)