JavaScript 冒泡排序和选择排序

var array = [1,2,3,4,5];  // ---> 服务
//效率  --->  针对一个有序的数组  效率最高

//标志 true false 
for(var j = 0; j < array.length - 1;j++ ){
    //- j 每次排序完成之后 后面减少比较的次数
    var isTrue = true;   //如果数组本身就是升序,则直接输出
    for(var i = 0; i < array.length - j - 1;i++){
        if(array[i] > array[i+1])
        {
            var temp = array[i];
            array[i] = array[i+1];
            array[i+1] = temp;
            isTrue = false;
        }
    }
    document.write(array);
    if(isTrue){
        break;
    }
}
var array = [12,34,4,6,20];

//length - 1  j = 0 - length - 1
for(var j = 0; j < array.length - 1;j++){
    var min = array[j]; // 1 3 34 4 345 5
    var minIndex = j;
    for(var i = j + 1; i < array.length;i++){
        if(array[i] < min){
            min = array[i];
            minIndex = i;
        }
    }
    
    if(minIndex != j){
        var temp = array[minIndex];
        array[minIndex] = array[j];
        array[j] = temp;
    }
}
原文地址:https://www.cnblogs.com/zapple/p/5837351.html