使用javascript实现选择排序

选择排序的工作原理:在未排序的数列中,找出最大(最小)的一个与未排序最后一个(第一个)进行交换。如下图所示(ps图片来源于网络,如有侵权请联系删除):

1391679-20180618165535432-492010645.gif

第一次:找出最大值为9的元素,然后与最后一个交换位置.
第二次:找出最大值为8的元素,然后与未排序的最后一个(整个数列的倒数第二个)进行交换.
第三次:找出最大值为7的元素,然后与未排序的最后一个(整个数列的倒数第三个)进行交换.
....
实现代码
image.png

代码的实现主要包括三步:
第一步:定义未排序数列的最大值位置,通常选择数列的第一个位置
第二步:将最大值与数列的每一个值进行比较,如果最大值小于数列的某一个值,则最大值位置发生变化,这样的话每一轮都能够找出未排序数列的最大值的位置。
第三步:将最大值与未排序数列的最后一个值进行交换。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。