# 选择排序的特点和优化的方向
# 视频教程
建议使用 1.5 倍或者 2 倍速观看。
# 选择排序的特点
这部分内容来自《算法(第 4 版)》第 2 章 《排序》之「2.1.2 选择排序」(中文版 P156)。
# 1. 交换次数最少
「选择排序」看起来好像最没有用,但是如果在交换成本较高的排序任务中,就可以使用「选择排序」(《算法 4》相关章节课后练习题)。
人都是想「偷懒」的,所以让人去做排序,一般不会去做那么多次交换。
# 2. 交换次数与输入数组是否有序无关
典型例子:即使是顺序数组,选择排序无法减少比较次数(相比于「插入排序」而言)。
# 练习
- 使用「选择排序」完成「力扣」第 912 题:排序数组 (opens new window)。
# 总结
# 算法思想:减治思想 (opens new window)
- 减治,即:逐渐缩小问题规模;
- 外层循环每一次都能排定一个元素,问题的规模逐渐减少,直到全部解决,即「大而化小,小而化了」。运用「减治思想」很典型的算法有「二分查找」。
作者:liweiwei1419 链接:https://suanfa8.com/basic-sorting-algorithm/selection/properties 来源:算法吧 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。