Pagini recente » Cod sursa (job #2609008) | Cod sursa (job #2414829) | Cod sursa (job #2177316) | Cod sursa (job #3283775) | Cod sursa (job #240072)
Cod sursa(job #240072)
/*
Bucket Sort
*/
#include <stdio.h>
#define N 1000001
int v[N],temp[N];
void bucket(int n){
int k=0,min=v[0],max=v[0],i;
for (i=0;i<n;++i){
++temp[v[i]];
if (v[i]>max)
max=v[i];
if (v[i]<min)
min=v[i];
}
for (i=min;i<=max;++i)
while (temp[i]){
--temp[i];
++k;
v[k]=i;
}
}
int main(){
int i,n;
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&n);
for (i=0;i<n;++i)
scanf("%d",&v[i]);
bucket(n);
for (i=0;i<n;++i)
printf("%d ",v[i]);
return 0;
}