选择排序(LOW)
# _*_coding:utf-8_*_
def select_sort(li):
for i in range(len(li)-1): # i是第几趟
min_loc = i
for j in range(i+1, len(li)):
if li[j] < li[min_loc]:
min_loc = j
li[i], li[min_loc] = li[min_loc], li[i]
print(li)
li = [3,4,2,1,5,6,8,7,9]
print(li)
select_sort(li)
选择排序(LOW)的更多相关文章
- LOW逼三人组(二)----选择排序算法
选择排序思路: 算法程序: def cal_time(func): # 装饰器 ,用来检测算法所执行的时间 def wrapper(*args,**kwargs): t1=time.time() re ...
- [PHP]基本排序(冒泡排序、快速排序、选择排序、插入排序、二分法排序)
冒泡排序: function bubbleSort($array){ $len=count($array); //该层循环控制 需要冒泡的轮数 for($i=1;$i<$len;$i++){ / ...
- Javascript中的冒泡排序,插入排序,选择排序,快速排序,归并排序,堆排序 算法性能分析
阿里面试中有一道题是这样的: 请用JavaScript语言实现 sort 排序函数,要求:sort([5, 100, 6, 3, -12]) // 返回 [-12, 3, 5, 6, 100],如果你 ...
- 直接插入排序、折半插入排序、Shell排序、冒泡排序,选择排序
一.直接插入排序 稳定,时间复杂度:最好O(n).最差O(n^2).平均O(n^2).空间复杂度O(1) void InsertSort(int L[], int n) { int i, j,key; ...
- Java 快速排序法 冒泡排序法 选择排序法 插入排序法
1.快速排序的原理: 选择一个关键值作为基准值.比基准值小的都在左边序列(一般是无序的),比基准值大的都在右边(一般是无序的). 从后往前比较,用基准值和最后一个值比较,如果比基准值小的交换位置,如果 ...
- Java中选择排序,冒泡排序,插入排序,快速排序
一:冒泡法排序 //冒泡排序 注:从小到大排 //特点:效率低,实现简单 //思想:每一趟将待排序序列中最大元素移到最后,剩下的为新的待排序序列,重复上述步骤直到排完所有元素. 这只是冒泡排序 ...
- 内部排序->选择排序->树形选择排序
文字描述 树形选择排序又称锦标赛排序; 比如,在8个运动员中决出前3名至多需要11场比赛, 而不是7+6+5=18场比赛(它的前提是甲胜乙,乙胜丙,则甲必能胜丙) 首先对n个记录的关键字进行两两比较, ...
- 算法分析中最常用的几种排序算法(插入排序、希尔排序、冒泡排序、选择排序、快速排序,归并排序)C 语言版
每次开始动手写算法,都是先把插入排序,冒泡排序写一遍,十次有九次是重复的,所以这次下定决心,将所有常规的排序算法写了一遍,以便日后熟悉. 以下代码总用一个main函数和一个自定义的CommonFunc ...
- JAVA简单选择排序算法原理及实现
简单选择排序:(选出最小值,放在第一位,然后第一位向后推移,如此循环)第一位与后面每一个逐个比较,每次都使最小的置顶,第一位向后推进(即刚选定的第一位是最小值,不再参与比较,比较次数减1) 复杂度: ...
- 排序方法整理Java - 冒泡排序、选择排序、插入排序、快速排序
/** * 排序方法整理 * @author zhyea * */ public class Sort { /** * 冒泡排序,从小到大. * 冒泡排序是比较相邻的两个元素,若顺序错误,则执行交换. ...
随机推荐
- 长连接网关技术专题(六):石墨文档单机50万WebSocket长连接架构实践
本文由石墨文档技术杜旻翔分享,原题"石墨文档 Websocket 百万长连接技术实践",有修订. 1.引言 在石墨文档的部分业务中,例如文档分享.评论.幻灯片演示和文档表格跟随等场 ...
- 基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v6.2版已发布
关于MobileIMSDK MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级.高度提炼,一套API优雅支持UDP .TCP .WebSocket 三种协议,支持iOS.A ...
- 今天记录一下css布局的flex布局的一个小妙招之gap
在平常前端开发中,常见的开发布局flex布局,常见的布局有这个样子,这个是可以用css进行修改,但是今天分享一个简单的方法 这种布局的话,如果是偶数的话可以用flex的 justify-content ...
- Solution -「AGC 058D」Yet Another ABC String
\[\mathfrak{Defining~\LaTeX~macros\dots} \newcommand{\chr}[1]{\underline{\texttt{#1}}} \] \(\mathscr ...
- 一步一步abp电商模块-1、搭建模块环境
前言 目前在开发abp电商模块,打算做一步,写一步,算是对自己的记录,主要是参考nopcommoner 并结合abp模块开发 知识都是连贯的,如果你熟悉asp.net core 3.x.abp(非vN ...
- redux初探
action是一个普通对象 里面必须有一个type字段,代表将要执行的行为,其他字段自己规划. action只是描述了将要发生的事情并不能直接修改状态 action创建函数 尽量是一个纯函数,他返回的 ...
- Pycharm:鼠标滚动控制字体大小
Pycharm字体放大的设置 1.File -> setting -> Keymap ->在搜寻框中输入:increase -> Increase Font Size(双击) ...
- SqlServer还原数据库出现“无法在服务器上访问指定的路径或文件”提示的解决办法
1.问题描述 出现的错误信息如下图所示: 2.解决办法 打开SqlServer配置管理器,点击SQL Server服务,点击右侧的"SQL Server (MSSQLSERVER)" ...
- 搭建基于Grafana+Prometheus+Node_exporter的性能监控与分析平台(Linux版)
搭建基于Grafana+Prometheus+Node_exporter的性能监控与分析平台(Linux版) 在现代IT环境中,系统监控与分析是确保应用稳定性和高效性的关键.Prometheus与Gr ...
- presto集成iceberg
一.Presto服务下新建catelog cd /usr/local/service/presto/etc/catalog vim iceberg.properties connector.name= ...