//选择排序(Selection-sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,
//然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
//超级稳定的算法 时间复杂度永远是O(n的平方)
//空间复杂度为O(1)
var arr = [49, 38, 65, 97, 76, 13, 27, 48, 55, 4];
function SelectSort(arr) {
for(var i=0;i<arr.length;i++){
var k = i
for(var j=i+1;j<arr.length;j++){
if(arr[j]<arr[k]){
k = j
}
}
if(k!==i){
temp = arr[k]
arr[k] = arr[i]
arr[i] = temp
}
}
return arr;
}
console.log(SelectSort(arr)); //4, 13, 27, 38, 48, 49, 55, 65, 76, 97
京公网安备 11010502036488号