js数组快速排序算法分析

作者:admin   时间:2020-08-05   访问量:69

  尽管原生的js有排序的方法,但是大树还是写了一个快速排序的函数,主要是因为这种算法值得借鉴。
        function quickSort(arr,tf){
            if(arr.length<=1){return arr};       
            var num=Math.floor(arr.length/2);
            var numValue=arr.splice(num,1);
            var left=[];
            var right=[]; 
            for(var i=0;i<arr.length;i++){
                if(tf?arr[i]<numValue:arr[i]>numValue){
                    left.push(arr[i]);
                }else{
                    right.push(arr[i]);
                }
            }
            return quickSort(left,tf).concat(numValue,quickSort(right,tf));
        }

  quickSort(arr,false)函数有两个参数,arr顾名思义就是你需要进行排序的数组,第二个数字是升序还是降序,true代表升序,false就是降序排列了。


【地址】:http://www.inseo.cn/seo/112.html转载请注明出处


相关文章

Copyright © 2018-2030 大树SEO All Rights Reserved.