fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void printA(int a[], int n){
  5. int i;
  6. for(i=0;i<n;i++){
  7. printf("%d ",a[i]);
  8. }
  9. printf("\n");
  10. }
  11.  
  12. void swap(int* a, int* b){
  13. int tmp;
  14. tmp = *a;
  15. *a = *b;
  16. *b = tmp;
  17. }
  18.  
  19. #define MAX 1000000
  20. void BucketSort(int a[], int n){
  21. int i,t;
  22. int b[MAX];
  23. for(int i =0;i<MAX;i++) b[i] = 0;
  24.  
  25. for(i=0; i<n; i++){
  26. b[a[i]]++;
  27. }
  28. t = 0;
  29. for(int i=0;i<MAX;i++) if(b[i]==1) a[t++] = i;
  30. }
  31.  
  32. int main(void){
  33. int n,i;
  34. int *v;
  35. scanf("%d",&n);
  36. v = (int*)malloc(sizeof(int)*n);
  37. if(v==NULL){
  38. printf("ERROR\n");
  39. return -1;
  40. }
  41. for(i=0;i<n;i++){
  42. scanf("%d",&v[i]);
  43. }
  44. BucketSort(v,n);
  45. printA(v,n);
  46. free(v);
  47. return 0;
  48. }
Success #stdin #stdout 0.01s 5456KB
stdin
8
21 55 5 13 8 2 34 3
stdout
2 3 5 8 13 21 34 55