桶排序的思想是把记录的数放在某个有限范围内(整型)内,然后顺序输出,但耗费空间较大,且一个值不能出现两次。
代码如下(从小到大):
#include<cstdio>
bool num[10000]={false}; //装数的"桶" 范围:0-9999
int n,k; //数的个数n和临时存储数的k
int main()
{
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&k);
num[k]=true; //装"桶"
}
for(int i=0;i<10000;i++) //输出
if(num[i])
printf("%d ",i);
}