js中的选择排序和冒泡排序

相信很多初学js的朋友们都遇到过问题,那就是选择排序和冒泡排序的规则是什么?这两种排序方式又该怎么用js代码书写呢?这两个问题对于但凡有一点js基础的程序员来说都不算难,但对于刚入坑js的小白来说可就有点恼火了。因为这两种排序方式都涉及到双重for循环,对于刚入坑的小白来说,双重for循环可能更加的抽象难以理解它的循环步骤,但只要理清了思路就很容解决了。下面给大家先讲解一下两种排序的规则和附上代码。(注:排序规则是转载的,我自己可能解释的不是那么清除,文章中有原文链接)
冒泡排序
1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2、 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。这一趟比较完后,最后的元素会是最 大的数。
3、 针对所有的元素重复以上的步骤,除了最后一个。(排好序的数不再进行比较)
4、 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
选择排序
将要排序的数组分成两个数组,一个是有序数组一个是无序数组,再定义一个最值和遍历下标假定有序数组是数组的第一个元素,这个最值也假定为数组的第一个数,遍历下标从第一个数开始然后将有序数组中的数和遍历下标指向的数进行比较, 如果无序数组中的数大于或小于有序数组中的数,那么将最大值或者最小值的下表更新为无序数组中那个值的下标然后再将新的最大值或者最小值的下标和有序数组中的数比较,若大于或者小于,那就将它们两的值进行交换(原文链接https://blog.csdn.net/liuwenjuan_cherry/article/details/80657416)

代码附上
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值