描述:
从数组中寻找到最小的元素,将其与数组第一个元素交换;再在剩下的元素中找到最小的元素,与数组第二个元素交换......直至整个数组排序完成。因是不断的在未排序元素中寻找最小的元素,故称为选择排序。
时间复杂度:
对于长度为N的数组来说,交换的总次数为N,而比较的总次数为[N*(N-1)]/2 ~ N²。
故此时间复杂度为:N²
特点:①运行时间与输入无关,即有序长度为N的数组与无序长度为N的数组所用时间一样长。
②数据移动次数最少,N次交换。与数组长度为线性关系。
动图描述:
黄色代表已排序列,红色代表未排序列中最小值,蓝色代表当前位置![](https://i-blog.csdnimg.cn/blog_migrate/fc664d59cdff3379120d25a47c4e73a7.gif)