首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JavaScript数组-选择排序

选择排序

选择排序相对于冒泡排序是比较好理解的排序方法

原理:通过比较首先选出最小的数放在第一个位置上,然后在其余的数中选择次小的数放在第二个位置,以此类推,直到排序完成。

同样还是用冒泡的那几个数9,8,7,6,5,4

我们通过选择排序来进行从小到大排序

先这种排序比较方法也叫做打擂台法

先看看第1个数9,往后所有的数进行比较,比较完成后就可以选出最小的数放在第0个位置;然后再进行第2个数进行比较,依次类推……

我们来一起看这种排序方法怎么写

上面这6个数,要比较多少次,打多少次擂台呢?

第一个数先来比较,把4放在第一个,9放在最后

再选出下一个数进行比较

选出一个数5,然后再继续选数比较

依次类推…

直到所有数改为升序排列,从小到大

一共要比较多少次呢?我们来用循环写一下

分析:

1.定义一个i让它小于数组的长度 – 1,因为最后一个数不用比较了

2.每一轮比较的时候应该从什么位置开始去比较呢?j = i + 1; j < arr.length

(当前数肯定不需要跟当前数去比较,所以是从当前数开始,到后面所有的数结束)

3.如果后面的数比前面的数小,就交换位置

arr[i] > arr[j]; tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp

运行结果为

这就是选择排序,跟冒泡排序有所区别

- End -

---web分享,分享的不只是web

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201228A0JIPQ00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券