選擇排序的遞迴演算法
阿新 • • 發佈:2019-02-15
#include<stdio.h> #include<stdlib.h> #include<time.h> #define N 5 void fun(int* a,int n,int i) { if(i>=n-1) { return; } else{ int temp,j; temp=i; for(j=i+1;j<n;j++) { if(a[j]>a[temp]) temp=j; } if(temp!=i) { int m; m=a[temp]; a[temp]=a[i]; a[i]=m; } fun(a,n,i+1); } } void main() { int a[N],i,j,temp; time_t ds; int data=time(&ds); srand(data); for(i=0;i<N;i++) { a[i]=rand()%50+10; printf("\n%d ",a[i]); } printf("\n----------------------------------------------------------\n"); fun(a,N,0); for(i=0;i<N;i++) printf("\n%d",a[i]); system("pause"); }