- 311 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 18:26:40 ]
- >>304
#include <stdio.h> #define N 10 void mqsort(int x[], int left, int right){ int i=left,j=right,p=x[(i+j)/2]; while(1){ while(x[i]<p) i++; while(p<x[j]) j--; if(i>=j) break; {int tmp = x[i]; x[i] = x[j]; x[j] = tmp;} i++;j--; } if(left<i-1) mqsort(x, left, i-1); if(j+1<right) mqsort(x, j+1, right); } int main(){ int a[N],i; for(i=0;i<N;++i)scanf("%d",a+i); mqsort(a,0,N-1); for(i=0;i<N;++i)printf("%d ",a[i]); return 0; }
|

|