# 选择排序——体育老师一指弹指定排序

选择排序,顾名思义是要选出一个最大的和一个最小的,然后安排这个最值的位置。为了方便记忆,我们可以假设一个特定的场景,有点类似于体育老师每次指定一个最矮的人(或者最高的人),站在最前面(或者最后面)。

选择排序的原理是:在未排序的数列中,找出最大(最小)的一个与未排序最后一个(第一个)进行交换

如下图所示:

第一次找出最大值为9的元素,然后与最后一个交换位置,

第二次找出最大值为8的元素,然后与未排序的最后一个(整个数列的倒数第二个)进行交换,

第三次找出最大值为7的元素,然后与未排序的最后一个(整个数列的倒数第三个)进行交换,

.... 选择排序

# 实现代码

选择排序 选择排序

# 选择排序特点

选择排序在排序的过程中每一次都必须找出最小的那个值,也就是说必须把所有的值都比较一遍,无法中断排序。