实现选择排序

2018-09-11 02:05 更新

选择排序跟冒泡有点类似,冒泡是比较相邻两个元素的大小,并交换元素,选择排序则是比较相邻元素的大小以后,记录最小元素在数组中的位置,在每趟循环结束以后交换一次元素

选择排序每趟循环只交换了一次元素,因此效率比冒泡排序更高。选择排序在所有情况下都具有二次时间复杂度。

var array = [];
(function createArray(size) {
  array.push(+(Math.random() * 100).toFixed(0));
  return (size > 1) ? createArray(size - 1) : undefined;
})(12);


function selectionSort(array) {
  // change code below this line
 for (var i = 0; i < array.length; i++) {
     var indexMin=i;
     for(var j=i+1;j<array.length;j++){
        if (array[j]>array[indexMin]) {
            indexMin=j;
        }
        var temp=array[indexMin];
        array[j]=temp;
     }

         
}


  // change code above this line
  return array;
}
selectionSort(array);
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号