# 2.选择排序
# 描述
- 在长度为
len
的无序数组中,第一次遍历len-1
个数,找到最小的数值与第一个元素交换; - 第二次遍历
len-2
个数,找到最小的数值与第二个元素交换; . . - 第n-1次遍历,找到最小的数值与第len-1个元素交换,排序完成。
# 实现
function selectSort(nums) {
for (let i = 0; i < nums.length - 1; i++) {
let min = 0; // 每次选出一个最小值
for (let j = i + 1; j < nums.length; j++) {
if (nums[i] > nums[j]) {
min = j;
}
}
if (min !== i) {
let temp = nums[i];
nums[i] = nums[min];
nums[min] = temp;
}
}
return nums;
}