首页 > 代码库 > 选择排序

选择排序

选择排序

 

 1 void selectsort(int a[],int n)
 2 {
 3     int i,j,k,t;
 4     for(i=0;i<n-1;i++)
 5     {
 6         k = i;
 7         for(j=i+1;j<n;j++)
 8         {
 9             if(a[j]>a[k])
10                 k = j;//只记录位置
11         }
12         if(k != i)//交换
13         {
14             t = a[i];
15             a[i] = a[k];
16             a[k] = t;
17         }
18     }
19 }
20 int main()
21 {
22     int a[10]={12,2,16,30,28,10,16,20,6,18},i;
23     cout << "原序列为:" ;
24     for(i=0;i<10;i++)
25         cout << a[i] << " ";
26     cout << endl;
27 
28     selectsort(a,10);
29     
30     cout << "排序后为:" ;
31     for(i=0;i<10;i++)
32     {
33         cout << a[i] << " ";
34     }
35     return 0;
36 }

 

选择排序