一分钟了解选择排序

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#include<iostream>
using namespace std;
const int MAXN=10001;

int main()
{    int n,k,i,j;
    float temp,a[MAXN];
    cin>>n;
     for (i=0;i<n;i++)
         cin>>a[i];                 //输入n个数
     for (i=0;i<n;i++)           //i控制当前序列中最小值存放的数
     {         k=i;         
for (j=i+1;j<n;j++)    //在当前无序区a[i..n]中选最小的元素a[k]
            if (a[j]<a[k])  k=j;
         if (k!=i)                    //交换a[i]和a[k],将当前最小值放到a[i]位置 
         {      temp=a[i];a[i]=a[k];a[k]=temp;         }     }
     for (i=0;i<n;i++) 
        cout<<a[i]<<" ";
     return 0;}
发布了79 篇原创文章 · 获赞 79 · 访问量 2143

猜你喜欢

转载自blog.csdn.net/dgyshy/article/details/104881528