【Javascript】排序算法(冒泡排序,选择排序,插入排序,归并排序,快速排序)

原创 amandakelake 随笔 JavaScript 739阅读 2017-05-27 15:24:13 举报

回头重新刷了一遍《学习Javascript数据结构与算法》这本书,并把其中的排序算法部分亲自动手实践了一遍,包括把原书里面比较啰嗦的代码精简了一些
目前共整理出了五种:冒泡排序,选择排序,插入排序,归并排序,快速排序(递归)
经典的排序算法有十种,剩下五种再慢慢研究

1、冒泡算法:比较任意两个相邻的项,如果第一个比第二个大,则交换顺序
javascript 代码

2、选择排序:找到数组中最小的项并将其放到第一位,找到第二小的值,并将其放到第二位,依次……
javascript 代码

3、插入排序:每次只排序一个数组项,确定它应该插入到哪个位置
javascript 代码

4、归并排序(分治):
①将数组拆分成较小的数组,直到每个数组的长度为1;
②合并和排序小数组,直到回到原始数组的长度;
javascript 代码

5、快速排序(分治)
①从数组中选择中间项目作为主元
②建立左右两个数组,分别存储左边和右边的数组
③利用递归进行下次比较
javascript 代码

【Javascript】排序算法(冒泡排序,选择排序,插入排序,归并排序,快速排序)

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复