数组选择排序

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

 

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

 


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

 
原文地址:https://www.cnblogs.com/login123/p/12013068.html