#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int n;
int k;
scanf("%d%d",&n,&k);
int b[n];
for(int i=0;i<n;i++)
{
scanf("%d",&b[i]);
}
for(int i=0;i<k;i++)
{
int m=i;
for(int j=i+1;j<n;j++)
{
if(b[m]>b[j])
{
int temp=b[m];
b[m]=b[j];
b[j]=temp;
}
}
}
for(int i=0;i<k;i++)
printf("%d ",b[i]);
system("pause");
return 0;
}
解释:只是控制了外层群换的次数,减少了排序的时间