javascript配列並べ替え(sort、泡が出る)

2154 ワード

ラベル(スペース区切り):配列並べ替え
一、jsのsort()方法
var arr = [10, 20, 1, 2];
arr.sort(function(a,b){
    if(ab){
       return 1;
    }
    return 0;
})
console.log(arr); //[1, 2, 10, 20]
上のコードのように、正の順(小さいから大きいまで)に並べます.通常規定では、abなら1に戻る.a==bの場合は、0を返します.
逆順
var arr = [10, 20, 1, 2];
arr.sort(function(a,b){
    return a-b;
})
console.log(arr); //[20, 10, 2, 1]
このセグメントの並べ替えコードの効果は前のコードと同じです.
二、泡の並べ替え
var arr = [10, 20, 1, 2];
var t;
for(var i=0;iarr[j]){
            //  
            t=arr[i];  //    
            arr[i]=arr[j]; //                   
            arr[j]=t; //                
        }
    }
}
console.log(arr);  //[1, 2, 10, 20]
三、二次元配列の順序(sort、泡が出る)
1.二次元配列はsort()方法で並べ替えます.
var arr=[
    ["  ",80],
    ["  ",50],
    ["  ",10],
    ["  ",50],
    ["  ",70],
    ["  ",100],
];
arr.sort(function(a,b){
    if(a[1]b[1]){
       return 1;
    }
    return 0;
})
console.log(arr);  //["  ",10],["  ",50],["  ",50],["  ",70],["  ",80],["  ",100]
2位配列の発泡秩序
var arr=[["  ",80],["  ",50],["  ",10],["  ",50],["  ",70],["  ",100]];
var t;
for(var i=0;iarr[j+1][3]){
            t=arr[j][4];
            arr[j][5]=arr[j+1][6];
            arr[j+1][7]=t;
        }
    }
}
console.log(arr);  //["  ",10],["  ",50],["  ",50],["  ",70],["  ",80],["  ",100]
最後に、このような書き方があります.
データのセットを並べ替えて、
二つは比較的小さいです.
外層循環n-1、
内部層循環n-1-i、
例:
//    

    //     
    var price=[10,12,8,15,18];
    for(i=0;iprice[j+1]){
                //  
                var temp;
                temp=price[j];
                price[j]=price[j+1];
                price[j+1]=temp;
            }
        }
    }
    console.log(price);