常用的两种排序方式:

快速排序:
这里的这种是最简单的一种写法,可以用来面试笔试

    var quickSort = function(arr){
        if(arr.length <= 1){return arr};
        //Math.floor方法获取一个小于等于它的整数
        var pivotIndex = Math.floor(arr.length / 2);    
        //splice,数组最强大的方法,可以删除,增加,替换元素;这里用来删除
        var pivot = arr.splice(pivotIndex,1)[0];
        var left = [];
        var right = [];
        
        for(var i=0;i<arr.length;i++){
            if(arr[i]<pivot){
                left.push(arr[i]);
            }else{
                right.push(arr[i]);
            }
        }
        //concat,数组拼接的方法
        return quickSort(left).concat([pivot],quickSort(right));
    }
    
    var arr1 = [48,32,56,7,33,59];
    console.log(quickSort(arr1));

冒泡排序:

    var arr = [2,3,5,4,89,54,35];
    function bSort(){
        for(var i=0;i<arr.length-1;i++){
            for(var j=0;j<arr.length-1-i;j++){
                //相邻元素两两对比,元素交换,大的元素换到后面
                if(arr[j]>arr[j+1]){
                    var x;
                    x = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = x;
                }
            }
        }
        return arr;
    }
    bSort(arr);
    console.log(bSort(arr));

王超
42 声望1 粉丝

世间美好,与你环环相扣。