排序

一个无序的数组如何排列成有序?

#include<stdio.h>

int max(int a[], int len){ //找出最大的数的位置
int maxid=0;
int i;
for(i=1; i<len; i++){
if(a[i]>a[maxid]){
maxid=i;
}
}
return maxid;
}

int main(){
int a[]={2,45,34,1,0,89,4,56,100,74};
int len = sizeof(a)/sizeof(a[0]);

int i = len - 1;
for(i; i>0 ;i--){

// 选择排序
int maxid=max(a, i+1);
//交换a[maxid]、a[len-1]
int t = a[maxid];
a[maxid] = a[i];
a[i] = t;
}

int j = 0;
for(j; j<len; j++){
printf("%d\n", a[j]);
}
return 0;
}

 

posted @ 2021-12-09 22:20  泰勒斯儿童营养牙膏  阅读(8)  评论(0编辑  收藏  举报