本文以一個(gè)非常簡(jiǎn)單的實(shí)例說(shuō)明VC++選擇排序算法的實(shí)現(xiàn)方法,對(duì)n個(gè)記錄進(jìn)行n-1趟簡(jiǎn)單選擇排序,在無(wú)序區(qū)中選取最小記錄。
具體實(shí)現(xiàn)代碼如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#include<iostream> using namespace std; //簡(jiǎn)單選擇排序 void SelectSort( int r[ ], int n) { int i; int j; int index; int temp; for (i=0; i<n-1; i++) //對(duì)n個(gè)記錄進(jìn)行n-1趟簡(jiǎn)單選擇排序 { index=i; for (j=i+1; j<n; j++) //在無(wú)序區(qū)中選取最小記錄 if (r[j]<r[index]) index=j; if (index!=i) { temp=r[i]; r[i]=r[index]; r[index]=temp; } } for (i=0;i<n;i++) cout<<r[i]<< " " ; cout<< "\n" ; } |