实现选择排序
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);
以上内容是否对您有帮助:
← 冒泡排序
更多建议: