从品牌网站建设到网络营销策划,从策略到执行的一站式服务
本篇文章我们来了解一下JavaScript中的冒泡排序与选择排序的相关知识,起泡法每次比较就要立刻交换,而选择排序是把未排序最小的数找出来与它应在的位置上的元素交换。选择排序交换次数较少,一定程度上提高了运算效率。希望对大家有帮助。
JavaScript冒泡排序与选择排序
冒泡排序
原理:
比较两个相邻的元素,将值大的元素交换到右边,直到最右边。注意核心是相邻。
思路:
依次比较相邻的两个数,将比较小的数放在前面,比较大的数放在后面。第一轮下来数组中的数会排在最后面。
第二轮:然后数组再剩余的数中从第一个数依次比较相邻的数,将的数排在最后面。
重复步骤,直到排序完成。
注意:到倒数第二轮完时,最后一轮还剩一个数,肯定是最小的,所以不用排序。即就是只用排序 数组的长度减一(arr.length-1)轮
算法可视化:
代码如下:
结果如下:
选择排序
思路:
假设数组第一个位置的数最小,然后与后面的每一个数进行比较,只要找到更小的就交换值对应的下标,注意是下标。第一轮找一遍之后可以锁定到最小值的位置了(就是找到了下标)然后就交换值。
第二轮假设第二个位置的数最小,这时候不用管数组第一个值(因为第一轮找到已经是最小的了)然后与后面最小值交换下标,锁定后再交换值。
重复步骤,直到排序完成。
注意:到倒数第二轮完时,最后一轮还剩一个数,肯定是比前面的数都还大,所以不用排序。即就是只用排序 数组的长度减一(arr.length-1)轮
算法可视化:
代码如下:
没有封装,大家可以自己封装一下
结果如下:
相关视频教程推荐:jQuery视频教程
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图