选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。

li = [9, 8, 7, 6, 5, 4, 3, 2, 1]
for i in range(len(li)):for j in range(i, len(li)):if li[i] > li[j]:li[i], li[j] = li[j], li[i]print(li)"""
[1, 9, 8, 7, 6, 5, 4, 3, 2]
[1, 2, 9, 8, 7, 6, 5, 4, 3]
[1, 2, 3, 9, 8, 7, 6, 5, 4]
[1, 2, 3, 4, 9, 8, 7, 6, 5]
[1, 2, 3, 4, 5, 9, 8, 7, 6]
[1, 2, 3, 4, 5, 6, 9, 8, 7]
[1, 2, 3, 4, 5, 6, 7, 9, 8]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
"""

选择排序(Selection sort)是一种简单直观的排序算法相关推荐

  1. 【排序算法】选择排序(Selection sort)

    选择排序(Selection sort)是一种简单直观的排序算法. 选择排序介绍 它的基本思想是: 首先在未排序的数列中找到最小(or最大)元素,然后将其存放到数列的起始位置:接着,再从剩余未排序的元 ...

  2. C语言选择排序Selection sort算法(附完整源码)

    选择排序Selection sort算法 选择排序Selection sort算法的完整源码(定义,实现,main函数测试) 选择排序Selection sort算法的完整源码(定义,实现,main函 ...

  3. 一种简单的图形旋转算法

    图形旋转好玩又有实用性, 这里介绍一种简单的图形旋转算法. 具体步骤如下: 1. 首先将原图和旋转图的坐标原点都变换到图形的中心位置处. 2. 历遍旋转图形中的每一个pixel, 将pixel的坐标( ...

  4. 一种简单的抗锯齿算法

    在LCD等显示器上逐点绘制几何图像的时候, 往往对几何体的边缘采样不足, 这就会导致出现锯齿状不平滑的边缘. 为了尽量减弱这种现象,需要在斜线或物体边缘进行更密集的采样,然后根据一定的权重比例将色彩/ ...

  5. 选择排序--Selection sort

    原理 选择排序,是冒泡排序的优化. 每一趟只交换一次.就是选择最大(或者最小的)和首位交换. 例子 现有无序数组[6 5 4 1 8 9] 第一趟找到最小数1,放到最前边(与首位数字交换) 交换前:| ...

  6. 排序之选择排序(Selection sort)

    文章目录 1 基本思想 2 图示 3 代码 4 测试结果 5 时间复杂度及稳定性 以前了解过的排序算法,发现长时间不用之后,有些遗忘,特此记录一下,待遗忘时候可以再查阅一下 1 基本思想 N个数据,每 ...

  7. 常用的几种简单的内部排序方法

    这几种排序方法分别为:冒泡排序,选择排序,插入排序,快速排序 1.冒泡排序: 思想:简单的说就是想办法把一堆数据中最大的数不停地往后边排. 代码: class Bubble{ // /** // * ...

  8. 基本排序算法01----选择排序(selection sort)

    可能最简单的排序策略就是: 1.搜索整个列表,找到最小项的位置 2.如果该位置不是列表的第一项,则将两项交换位置 3.然后算法回到第二个位置并重复上述操作 4.当算法到达列表最后一个位置的时候,排序就 ...

  9. java 路由算法_几种简单的负载均衡算法及其Java代码实现

    什么是负载均衡 负载均衡,英文 名称为Load Balance,指由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助.通过某种 负载分 ...

最新文章

  1. 【中文】Joomla1.7扩展介绍之Kunena(强大的论坛)
  2. java8模拟grouby方法
  3. boost::hana::product用法的测试程序
  4. db2分页查询sql语句_MySQL学习(八):SQL查询语句的用法和优化
  5. Educational Codeforces Round 88 (Rated for Div. 2) E(数学)
  6. plsql 批量调存储过程_数控双端开榫机:批量铣榫头真牛气
  7. 【CF#505B】Mr. Kitayuta's Colorful Graph (并查集或Floyd或BFS)
  8. 【31】将文件间的编译依存关系降至最低
  9. 学校计算机社团都干些什么,计算机社团管理制度
  10. JavaScript常用DOM操作方法和函数
  11. ASP.NET的页面生存周期 [转]
  12. 3图片尺寸要求_贵港200L塑料桶图片尺寸
  13. istio sidecar流量接管_istio 常见的 10 个异常
  14. 使用MySQL8.0以上版本和MySQL驱动包8.0以上出现的问题
  15. itextpdf 简介
  16. centos7字体颜色改变_CentOS7.3中设置Shell终端文本外观自定义字体
  17. Ti c64x 优化基本策略
  18. 在ubuntu中使用visual studio code对C/C++文件调试
  19. Win10下安装CentOS双系统详解
  20. 经典企业文化书籍推荐,有了这6本书企业文化落地不再是难事

热门文章

  1. Three.js 实现虎年春节3D创意页面
  2. 企业考勤,用开源协同办公OA系统来管理!
  3. 使用nodejs(ipp和html-pdf-node)实现连接打印机后端静默打印html文件
  4. win10下用VMware workstation pro安装Ubuntu 16.04图解
  5. 设计模式之六大设计原则【入门】
  6. 10大免费视频素材网站
  7. Python控制结构(二)
  8. 超微服务器主板启动无反应_我如何构建无服务器启动
  9. JavaScript高级(二)|函数进阶+正则表达式
  10. Markdown 编辑器设置字体大小颜色