JavaScriptソートアルゴリズムのまとめ:発泡体の並べ替えの選択、並べ替えの迅速な並べ替え、並べ替え


注:交換配列中の2つの要素はES 6のデスティネーションでも使用できます.
 [arr[j],arr[j+1]]=[arr[j+1],arr[j]]
 
泡の並べ替え 
 //       ,          ,     A    B    ,  A>B,        
 //      arr.length-1
 //        arr.length-1-i
        
       function bubbleSort(arr){
            var leng=arr.length;
            for (var i=0;iarr[j+1]){
                        var temp=arr[j];
                        arr[j]=arr[j+1];
                        arr[j+1]=temp;
                    }
                }
            }
            return arr;
        }
        var arr=[1,3,5,3,6,7,2,3];
        console.log(bubbleSort(arr));
並べ替えを選択
         function selectionSort(arr){
            var leng=arr.length;
            for (var i=0;iarr[j]){
                        var temp=arr[j];
                        arr[j]=arr[i];
                        arr[i]=temp;
                    }
                }
            }
            return arr;
        }
        var arr=[1,3,5,3,6,7,2,3];
        console.log(selectionSort(arr));
並べ替えの挿入
     //               ,               
     //         
        function insertionSort(arr){
            var leng=arr.length;
            for (var i=1;i=0;j--){
                    if(arr[j+1]
クイックソート
    //       ,                 ,          
    //         ,    ,       ,        ,        ;
    //            ,                     ,  。
         
     function quickSort(arr){
            if(arr.length<=1){
                return arr;
            }    
            var left= [];
            var right= [];
            var base=arr.splice(0,1);
            console.log(arr)
            for(var i=0;i
並べ替え
//              
var sort=function(arr){

    if(arr.length<=1) return arr;
    let mid=parseInt(arr.length/2);
    return merge(sort(arr.slice(0,mid)),sort(arr.slice(mid)));

}
var merge=function(left,right){

    let res=[];
    while(left.length>0 && right.length>0){
        left[0]