排序
 
- 排序:把某个乱序的数组变成升序或降序的数组 (这里用数组来做举例)
 
 
选择排序
 
- 该排序属于 贪心 策略
 - 关注的是局部,是一种苟且的东西
 
 
算法实现
 
Array.prototype.selectionSort = function() {let len = this.length;for(let i=0; i<len-1; ++i) {let minIndex = i; for(let j=i;j<len;++j) {if(this[j] < this[minIndex]) {minIndex = j; }}if(i !== minIndex) {[this[i], this[minIndex]] = [this[minIndex], this[i]]; }}
}let arr = [5,4,3,2,1]
arr.selectionSort()
console.log(arr); 
 
- 性能不好,比较简单,贪心
 - 找到数组中最小值,选中它并将其放置于第一位(第一轮)
 - 接着找到第二小的值,选中它并将其放置在第二位(第二轮)
 - …
 - 以此类推,执行n-1轮
 - 注意,每一轮比较完毕,前面的都是有序的,可以跳过,不再比较
 - 时间复杂度