更多课程 选择中心


Web培训

400-996-5531

Web培训

Web前端培训 > Web职场 > 正文

Web前端工程师你知道JavaScript中常用的排序算法吗?


今天小编要跟大家分享的文章是关于JavaScript中常用的排序算法。相信很多刚刚从事Web前端工作或者准备面试的小伙伴们对此还不是很了解,下面就让小编来为大家介绍一下吧!

一、冒泡排序

冒泡排序是我们在编程算法中,算是比较常用的排序算法之一,在学习阶段,也是最需要接触理解的算法,所以我们放在第一个来学习。

算法介绍:

·     比较相邻的两个元素,如果前一个比后一个大,则交换位置。

·     第一轮把最大的元素放到了最后面。

·     由于每次排序最后一个都是最大的,所以之后按照步骤1排序最后一个元素不用比较。

 Web前端工程师你知道JavaScript中常用的排序算法吗

冒泡算法改进:

设置一个标志,如果这一趟发生了交换,则为true。否则为false。如果这一趟没有发生交换,则说明排序已经完成。代码如下:

 Web前端工程师你知道JavaScript中常用的排序算法吗

假如数组长度是20,如果只有前十位是无序排列的,后十位是有序且都大于前十位,所以第一趟遍历排序的时候发生交换的位置必定小于10,且该位置之后的必定有序,我们只需要排序好该位置之前的就可以,因此我们要来标记这个位置就可以了,即可以记录每次扫描中最后一次交换的位置,下次扫描的时候只要扫描到上次的最后交换位置就行了,因为后面的都是已经排好序的,无需再比较,代码如下:

 Web前端工程师你知道JavaScript中常用的排序算法吗

每一次循环从两头出发算出最大和最小值,代码如下:

 Web前端工程师你知道JavaScript中常用的排序算法吗

在代码3的基础上记录每次扫描最后一次交换的位置,下次扫描的时候只要扫描到上次的最后交换位置就行,同代码2,代码如下:

 Web前端工程师你知道JavaScript中常用的排序算法吗

二、快速排序

算法介绍:

快速排序是对冒泡排序的一种改进,第一趟排序时将数据分成两部分,一部分比另一部分的所有数据都要小。然后递归调用,在两边都实行快速排序。

 Web前端工程师你知道JavaScript中常用的排序算法吗

三、选择排序

算法介绍:

选择排序就是从一个未知数据空间里,选取之最放到一个新的空间

 Web前端工程师你知道JavaScript中常用的排序算法吗

四、插入排序

算法介绍:

·     从第一个默认被排好序的元素开始

·     取出下一个元素,在已经排序的元素序列中从后向前扫描

·     如果已排序的元素大于取出的元素,则将其分别向后移动一位

·     直到找到已排序的元素中小于或等于取出的元素,将取出的元素放到它的后一位

·     重复步骤2

 Web前端工程师你知道JavaScript中常用的排序算法吗

插入排序算法改进-二分法插入排序:

 Web前端工程师你知道JavaScript中常用的排序算法吗

以上就是小编今天为大家分享的JavaScript中常用的排序算法的文章,文章中介绍的是四种比较基础的排序方法,JavaScript的排序算法还有很多,这是我们4种最常见也是最基本的算法,掌握理解好,在面试和开发中也能从容应对了。想要了解更多Web前端知识记得关注达内Web培训官网哦。最后祝愿小伙伴们工作顺利!

本文转自前端研究所。

*声明:内容与图片均来源于网络(部分内容有修改),版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:2019年web前端开发趋势有哪些?web工程师你知道吗?
下一篇:Web性能重要吗?Web性能优化的技巧有哪些?

一般程序员真实工资是多少?

Web前端开发是做什么的?

中级Web前端开发工程师

小程序和h5的区别和优势

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

贵州省

云南省

广西省

海南省