> 文档中心 > C++ 桶排序

C++ 桶排序

题目描述
某商场的仓库中有n件商品,每件商品的价格在0-1000之间(价格为0的商品为赠品)。现在商场经理要求将这n件商品按价格由低到高排序。请编程输出n个商品价格排序后的情况。

输入格式
第一行一个正整数n,表示有n件商品,1≤n≤100000。接下来的一行,空格隔开的n个整数,表示第i件商品的价格。

输出格式
一行,排好序的n个整数(中间用空格隔开)

样例数据
input

51 8 1 2 2

output

1 1 2 2 8

数据规模与约定
1≤n≤105

Code

#includeusing namespace std;int a[1005];int main(){int i,j,n,x;cin>>n;for(i=0;i<=1000;i++)  a[i]=0;//清零 :每个数字都是零。 for(i=1;i<=n;i++){cin>>x;a[x]++;//桶  核心 :意思是有a[x]个x }for(i=0;i<=1000;i++)//输出a[i]个i {for(j=1;j<=a[i];j++)  cout<<i<<" "; }return 0;}

在这里插入图片描述

天天赞天天看!!!

ZDfans