13032 - 基数排序

给定 n个非负整数,请你使用基数排序(LSD 方式)对这些数从小到大进行排序,并输出排序后的结果。 基数排序是一种非比较型排序算法,它从最低位(个位)开始,依次对每一位进行“分配—收集”操作,最终得到有序序列。

你需要按照如下思路实现排序过程:

找到数组中的最大值,确定数字的最大位数

从个位开始,到第 d位(最高位)为止,依次进行:

按照当前位数字将元素放入 0~9 号桶中

按桶的顺序依次取回元素,放回原数组

完成所有位的排序后,数组即为有序状态

输入

第一行一个整数 n,表示数字个数。 第二行 n个整数,表示待排序序列。

输出

输出一行 n个整数,表示排序后的结果,数与数之间用一个空格隔开。

样例

输入

5
4 3 2 5 1

输出

1 2 3 4 5

来源

原创

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题