Skip to main content

选择排序

// 找出数组中最小的元素
function findSmallest(arr) {
let smallestEle = arr[0];
let smallestIndex = 0;
let len = arr.length;
for (let i = 1; i < len; i++) {
if (arr[i] < smallestEle) {
smallestEle = arr[i];
smallestIndex = i
}
}
return {
smallestIndex,
smallestEle
};
}

// 选择排序
function selectSort(arr) {
let sorted = [];
for (let i = 0; i < arr.length; i++) {
let {smallestIndex, smallestEle} = findSmallest(arr);
sorted.push(smallestEle);
arr.splice(smallestIndex, 1);
}
return sorted;
}