// 挑选排序
// 挑选排序算法是一种原地点比较排序算法。
// 挑选排序大抵的思绪是找数据结构中的最小值并将其安排在第一位。找到第二小的的值安排的第二类,以此类推
// 每一次内轮回遍历寻觅最小数,记录下minIndex,并在此次内轮回后交流minIndex和i的位置
function swap(arr, indexA, indexB) {
return [arr[indexA], arr[indexB]] = [arr[indexB], arr[indexA]];
}
function selectionSort(arr) {
let len = arr.length;
for (let i = 0; i < len; i++) {
let minIndex = i;
for (let j = i + 1; j < len; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
if (i != minIndex ) {
swap(arr, i, minIndex);
}
}
return arr;
}
const arr = [91, 60, 96, 7, 35, 65, 10, 65, 9, 30, 20, 31, 77, 81, 24];
console.log(selectionSort(arr));