2. 选择排序
# 选择排序简介
# 流程:
取出未排序部分的第一个元素,遍历该元素之后的部分并比较大小。对于第一次遍历,就是取出第一个元素
如果有更小的,与该元素交换位置
每次遍历都能找出剩余元素中的最小值并放在已排序部分的最后
# 演示图
# 代码实现
function selectionSort(arr) {
for (let i = 0; i < arr.length; i++) {
let min_index = i;
// 遍历后面的部分,寻找更小值
for (let j = i + 1; j < arr.length; j++) {
// 如果有,更新min_index
if (arr[j] < arr[min_index]) min_index = j;
}
swap(i, min_index, arr);
}
return arr;
}
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
更新时间: 1/21/2022, 7:50:17 PM