关于前端:JavaScript快速排序冒泡排序

29次阅读

共计 720 个字符,预计需要花费 2 分钟才能阅读完成。

罕用的两种排序形式:

疾速排序:
这里的这种是最简略的一种写法,能够用来面试口试

    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));

正文完
 0