快速排序

Posted my12-28

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快速排序相关的知识,希望对你有一定的参考价值。

 1 <script>
 2    //采用二分法,取出中间数,数组每次和中间数比较,小的放左边,大的放右边
 3    var arr = [3, 1, 4, 6, 5, 7, 2,0];
 4    function quickSort(arr) {
 5        if(arr.length == 0) {
 6            return []; // 返回空数组
 7        }
 8        var cIndex = Math.floor(arr.length / 2);
 9 
10        var c = arr.splice(cIndex, 1);//把基准数从arr中移除11 
12        var l = [];
13        var r = [];
14        for (var i = 0; i < arr.length; i++) {
15            if(arr[i] < c) {
16                l.push(arr[i]);
17            } else {
18                r.push(arr[i]);
19            }
20        }
21        return quickSort(l).concat(c, quickSort(r));
22    }
23    console.log(quickSort(arr));
24 
25 
26 </script>

 

以上是关于快速排序的主要内容,如果未能解决你的问题,请参考以下文章

算法排序之堆排序

前端开发工具vscode如何快速生成代码片段

前端开发工具vscode如何快速生成代码片段

如何使用sublime代码片段快速输入PHP头部版本声明

代码片段如何使用CSS来快速定义多彩光标

vs2003:快速片段工具