选择排序
选择排序
选择排序是一种简单直观的排序算法,他的工作原理如下。
- 首先在未排序序列中找到最小(大)的元素,存放到排序序列的起始位置,
- 然后再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾,
- 以此类推,知道所有元素排序完毕
- 选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则他不会被移动。
- 选择排序每次交换一对元素,他们当中至少有一个奖杯移到其最终位置上,因此对n个元素的表进行排序总共进行之多n-1次交换。在所有的完全依靠交换去移动元素的方法中,选择排序属于非常好的一种。
时间复杂度
最优时间复杂度:O(n²)
最坏时间复杂度:O(n²)
稳定性:不稳定(考虑升序每次选择最大情况)
1 |
|
转载请注明来源,欢迎指出任何有错误或不够清晰的表达。可以邮件至gxnucgb@qq.com
文章标题:选择排序
文章字数:351
本文作者:陈桂彬
发布时间:2019-08-15, 11:47:20
最后更新:2019-08-15, 11:55:13
原始链接:https://github.com/gxnucgb/gxnucgb.github.io/2019/08/15/选择排序/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。