Author: bakari Date: 2012.7.30
排序算法有很多种,每一种在不同的情况下都占有一席之地。关于排序算法我分“经典排序之”系列分别述之。本篇为选择排序。
这个算法没甚么好说的。看代码:
1 /*******************************************************************
2 * Author: bakari Date:2012.7.30
3 * 简单的选择排序( < )
4 * 算法重点:找到一个序列中最小的点然后记录下下标,然后与未排序的第一个数交换
5 *******************************************************************/
6 void SelectSort::Select_Sort()
7 {
8 for (int i = 0;i != len - 1; ++i)
9 {
10 int mindex = i;
11 for (int j = i + 1; j != len; ++j)
12 {
13 if(SelectList[j] < SelectList[i])
14 mindex = j;
15 }
16 if (i != mindex) //如果第i个数就是最小数,则不用交换
17 Swap(i,mindex);
18 }
19 }