/**
* 实现原理
* 是一种原地址比较排序算法。大致思路是找到数据结构中的最小值并将其放置在第一位置,接着找到第二小的值并将其放置到第二位置,以此类推。
*/
function selectionSort(arr){
let len = arr.length
let minIndex,temp
for(let i=0;i<len-1;i++){
minIndex = i
for(let j=i+1;j<len;j++){ //之前的数据都是已经排序好的数据
if(arr[j] < arr[minIndex]){ //查找j之后数据中的最小值
minIndex = j
}
}
temp = arr[i]
arr[i] = arr[minIndex]
arr[minIndex] = temp
console.log(arr[i],arr[minIndex],minIndex,arr,'-----')
}
return arr
}
console.log(selectionSort([8,2,5]))