一、核心思路
选择排序算法是通过遍历数组,选择出数组的最小或最大值,与指定位置交换数据,遍历完整个数组的所有位置就完成排序
二、代码实现
let arr = [2,6,8,1,3,9,0,5,4,7]
/**
* 选择排序
* @param {Array} array 传入数组
* @return {Array} array 返回选择排序结果
*/
//每次循环在数组中找到最小或最大交换它们的位置
function selectSort(array){
let min,index,temp
for (let i = 0; i < array.length; i++) {
min = array[i]
index = i
for (let j = i+1; j < array.length; j++) {
if (array[j]<min) {
min = array[j]
index = j
}
}
temp = array[i]
array[i] = array[index]
array[index] = temp
}
return array
}
console.log(selectSort(arr))
// [
// 0, 1, 2, 3, 4,
// 5, 6, 7, 8, 9
// ]