这里先介绍两种常见的,后续会补充
冒泡排序
function bubbleSort(arr) {
//外层控制轮数,轮数是元素的个数减1
for (var i = 0; i < arr.length - 1; i++) {
//内层控制每轮比较的次数,随着轮数每增加1轮,次数减少1
for (var j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr;
}
选择排序
function sort(arr){
var minIndex = 0;
for(var i=0; i<arr.length-1; i++){ //需要排序的次数
var minIndex = i;
for(var j=i+1; j<arr.length; j++ ){
if( arr[minIndex]>arr[j] ){
minIndex = j;
}
}
var temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
return arr;
}