JS 简单选择排序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
let arr=[49,38,65,97,76,13,27,49];
console.log(selectionSort(arr));

function selectionSort(arr) {
let len = arr.length;
let minIndex, temp;
for (let i = 0; i < len - 1; i++) { //只要len-1趟就可以完成排序,注意i从0开始
minIndex = i;
for (let j = i + 1; j < len; j++) { //要比到最后一个数,其索引为len-1
if (arr[j] < arr[minIndex]) { //寻找最小的数
minIndex = j; //将最小数的索引保存
}
}
if(minIndex != i) {
temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
return arr;
}

参考

作者

DullSword

发布于

2018-07-27

更新于

2024-07-02

许可协议

评论