博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
排序算法
阅读量:7081 次
发布时间:2019-06-28

本文共 758 字,大约阅读时间需要 2 分钟。

hot3.png

一、快速排序

     思想:选取中间的值作为基准值,大于他的在左边,小于他的在右边,不断的重复下去。

     实现步骤: 

                   1、先取一个基准值quovt

                   2、定义两个数组,用来放基准值左边的数组和右边的数组

                   3、递归下去

var quickSort = function(arr) {      if (arr.length <= 1) {        return arr;      }      var pivotIndex = Math.floor(arr.length / 2);      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 if (arr[i] > pivot) {          right.push(arr[i]);        }      }      return quickSort(left).concat([pivot], quickSort(right));    };

参考资料:http://www.ruanyifeng.com/blog/2011/04/quicksort_in_javascript.html

 

二、归并排序

       思想:将两个顺序序列合并成一个顺序序列的方法

       代码:

转载于:https://my.oschina.net/u/2285087/blog/3001552

你可能感兴趣的文章
Daniel Pfeifer 《Effective CMake》讲座笔记
查看>>
Sequelize-nodejs-4-Model usage
查看>>
【赛时总结】◇赛时·VII◇ Atcoder ABC-106
查看>>
javascript 查找属性的过程
查看>>
mongo与node的两种连接方式 mongoskin && mongoclient 的基本使用
查看>>
ID3算法(决策树)
查看>>
修改GIT密码
查看>>
Nginx日志切割
查看>>
乒乓球
查看>>
Linux查询网址
查看>>
十,选择cfee编辑器并学会调试程序。以及结束语。
查看>>
炮弹转向鼠标点击方向,随即发射炮弹并产生爆炸特效
查看>>
新增图表控件
查看>>
LeetCode——Count Complete Tree Nodes
查看>>
【转】根据URL来读取网页输出的数据
查看>>
virtualbox里调整ubuntu的屏幕分辨率__转
查看>>
Python语言学习 (四)1.3
查看>>
【BZOJ 3270】博物馆
查看>>
Spring注解开发
查看>>
AHB协议
查看>>