时间和空间复杂度
Coddy 选择排序:数据结构与算法系列 课程的第 7 课,共 9 课。
时间复杂度:
- 最佳、平均和最坏情况:O(n2)
- 选择排序总是会扫描整个未排序部分来查找最小值,即使数组已经排好序也是如此。比较次数不受输入顺序的影响。
空间复杂度:
- O(1)
- 选择排序是一种“原地”算法。无论输入有多大,它都只使用固定数量的额外内存来重新排列元素。
总结:
- 选择排序简单且节省内存。
- 它执行的交换次数很少(最多 n-1 次),因此适用于写入成本较高的情况。
- 它的二次时间复杂度使其不适合处理大型数据集,这类场景更适合使用归并排序或快速排序等算法。
亲手试试
这节课没有代码挑战。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
选择排序:数据结构与算法系列中的所有课
自己练习: C 在线编译器