排序-选择排序-数据结构(31)

来源:互联网 发布:java中的接口是什么 编辑:程序博客网 时间:2024/05/19 13:08

一、选择排序

选择排序的思想是一趟循环,选择出最大(小)的数排到合适的位置。就是每一次循环排好一个数。

二、算法实现

//============选择排序 选择最小的数放在合适的位置==============int SelectMinKey(int i){int min = sqTable[i];int index = i;for (int j = i+1; j <= length; j++){if (sqTable[j] < min){min = sqTable[j];index = j;}}return index;}void SelectSort(){for (int i = 1; i <= length-1; i++){int j = SelectMinKey(i);//从[i...length]位置上选择最小的数if (i!=j){Swap(i,j);}}}