与冒泡排序相比,选择排序的平均时间复杂度比冒泡排序稍高。
基本思想:
每一趟从待排序的元素中选出最小(或者最大)的一个元素顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。
选择排序是不稳定的排序方法,N个记录的文件的直接选择排序可经过N-1趟直接选择排序得到有序结果。

示例如下:
定义数组a[]={13,4,8,2,11,67,0}

第一趟:a[]={0,4,8,2,11,67,13}

第二趟: a[]={0,2,8,4,11,67,13}

第三趟:a[]={0,2,4,8,11,67,13}

第四趟:a[]={0,2,4,8,11,67,13}

第五趟:a[]={0,2,4,8,11,67,13}

第六趟:a[]={0,2,4,8,11,13,67}

算法描述如下:

 

Code