五种排序算法---选择排序


一、介绍

选择排序(Selection sort)是一种简单直观的排序算法。其基本思想是:首先在未排序的数列中查找到最小或最大元素,然后将其存放到数列到起始位置;接着,再从剩余未排序的元素中继续寻找最小或最大的元素,放到以排序序列的末尾。依此类推,直到所有元素排序完毕。

二、图解

以数列{20,40,30,10,60,50}为例,演示其选择排序过程如下图所示:

排序流程如下:

第1趟:i=0。找出a[1...5]中的最小值a[3]=10,然后将a[0]和a[3]互换。数组变化:20,40,30,10,60,50-->10,40,30,20,60,50。

第2趟:i=1。找出a[2...5]中的最小值a[3]=20,然后将a[1]和a[3]互换。数组变化:10,40,30,20,60,50-->10,20,30,40,60,50。

第3趟:i=2。找出a[3...5]中的最小值,由于未排序元素中最小值均大于a[2]。因此该趟不做处理。

第4趟:i=3。找出a[4...5]中的最小值,由于未排序元素中最小值均大于a[3]。因此该趟不做处理。

第5趟:i=4。交换a[4]和a[5]的数据。数组变化:10,20,30,40,60,50-->10,20,30,40,50,60。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM