# 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;
}
Last Updated: 2/4/2023, 10:29:49 AM