- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- #include <string.h>
- #define N 10
- void show(int a[],int n)
- {
- int i;
- for(i=0;i<n;i++)
- {
- printf("a[%d]=%d\t",i,a);
- }
- }
- void bucket_sort(int *a,int n)
- {
- int i,buckets[51];
- for(i=0;i<51;i++)
- {
- buckets=0;
- }
- for(i=0;i<n;i++)
- {
- buckets[a]++;
- }
- for(i=0;i<51;i++)
- {
- if(buckets!=0)
- {
- static int j=0;
- a[j]=i;
- buckets--;
- printf("a[%d]=%d\t",j,i);
- j++;
- }
- }
- }
- int main()
- {
- int i,a[N];
- srand(time(NULL));
- for(i=0;i<N;i++)
- {
- a=rand()%50;
- }
- printf(" old number:\n");
- show(a,N);
- printf(" new number:\n");
- bucket_sort(a,N);
- printf("\n");
- return 0;
- }
|