题解 | #明明的随机数#
明明的随机数
https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0
#include <stdio.h> void _quick_sort(int* arr,int left,int right) { if(left >=right) return; int l=left,r=right; int p=(l+r)/2; int val=arr[p]; while(l<r) { while(l<p && arr[l]<=val) l++; if(l<p) { arr[p]=arr[l]; p = l; } while(r>p&&arr[r]>=val) r--; if(r>p) { arr[p]=arr[r]; p = r; } } arr[p]=val; _quick_sort(arr,left,p-1); _quick_sort(arr,p+1,right); } void quick_sort(int *a,int len) { _quick_sort(a,0,len-1); } int main() { int size=0; scanf("%d",&size); int a[size]; fflush(stdin); for(int i=0;i<size;) { scanf("%d",&a[i]); i++; for(int j=0;j<(i-1);j++) { if(a[j]==a[i-1]) { i--; size--; //printf("---------\n"); } } } quick_sort(a,size); for(int i=0;i<size;i++) { printf("%d\n",a[i]); } }