美文网首页
js快速排序(基准数法)

js快速排序(基准数法)

作者: AnsiMono | 来源:发表于2020-09-02 21:55 被阅读0次

    记录一下日常学习,今天实现一下js快速排序

    代码和思路如下

        let arr = [1,13,23,35,3,4,67,89,900,16];//定义数组
        function quckNum(arr){
                let numJz = arr[0];//取基准数 随便取就好了 我取第一个
                let arrLfet = [],arrRight = [];//定义2个数组 用于存放比较的值
                for (let i = 1; i < arr.length; i++) {
                    if (arr[i] < numJz) {
                        arrLfet.push(arr[i]);//比基准数小的放左边数组
                    }else{
                        arrRight.push(arr[i]);//比基准数大或者等于基准数的放右边数组
                    }
                }
                if (arrLfet.length>=2) arrLfet = quckNum(arrLfet);//比对后的数组的个数大于等于2才有意义 然后再次对数组进行比对操作
                if (arrRight.length>=2) arrRight = quckNum(arrRight);
                return arrLfet.concat(numJz,arrRight); //合并左边数组,基准数,右边数组并返回
            }
    

    方法写完了 运行一下 看看结果

    js快速排序.png

    完美

    相关文章

      网友评论

          本文标题:js快速排序(基准数法)

          本文链接:https://www.haomeiwen.com/subject/galgsktx.html