Visualization
Selection Sort
选择排序演示
选择排序通过每轮选择未排序部分中的最小元素,并将其与未排序部分的第一个元素交换来逐步排序数组。
Quick Actions
常用操作
Steps
排序步骤明细
暂无步骤,请点击"开始排序"
Algorithm Info
算法说明
算法步骤
- 从第一个元素开始,遍历未排序部分找到最小值。
- 将找到的最小值与未排序部分的第一个元素交换位置。
- 将已排序部分扩大一个元素,未排序部分缩小一个元素。
- 重复步骤 1-3,直到未排序部分为空。
时间复杂度
最坏情况: O(n²) - 需要比较 n(n-1)/2 次
最好情况: O(n²) - 即使数组已排序也需要同样次数
平均情况: O(n²)
空间复杂度
O(1) - 原地排序,不需要额外空间
稳定性
选择排序是不稳定的排序算法,相同元素的相对顺序可能改变。