首页 > 编程语言 > 详细

选择排序

时间:2017-02-25 21:11:11      阅读:183      评论:0      收藏:0      [点我收藏+]
 1 /*选择排序*/ 
 2 #include <iostream>
 3 using namespace std;
 4 int main()
 5 {
 6     int n,i,j,a[n+1],d;
 7     cin>>n;
 8     cout<<"请输入"<<n<<"个数进行排序:"<<endl;
 9     for(i=1;i<=n;i++)//输入n个数字 
10     {
11         cout<<""<<i<<"个数"<<endl;
12         cin>>a[i]; 
13     }
14     for(i=1;i<n;i++)//进行n-1轮比较 
15     {
16         d=i;//选择每轮第一个为假定最大数 
17         for(j=i+1;j<=n;j++)//将假定的最大数与其后的数一一比较 
18         {
19             if(a[j]>a[i])//选出其后的最大值 
20             d=j;//做标记 
21         }
22         if(d!=i)//判断是否有比假定数大的数存在,有,就把他和假定数互换 
23         {
24             int temp;
25             temp=a[i];
26             a[i]=a[d];
27             a[d]=temp;
28         }
29     }
30     for(i=1;i<=n;i++)//输出从大到小排好序的n个数 
31     {
32         cout<<a[i]<<" ";
33     }
34     return 0;
35 }

 

选择排序

原文:http://www.cnblogs.com/programmer-monkey2271971745/p/6442748.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!