链表应用之基数排序

算法描述:首先从最低位即个位开始排序

031322333324
01234

这是第一趟排序后的桶,个人认为,第一趟,如有322和422,那么就得人为的把422放在322上面,因为在做后趟时,我发现得从下往上的去填桶

422
322
2

第二趟,第一行,从左往右,按次最低位,即十位来填桶

  324333 
0 32231 
01234

第三趟

 

   333 
31  324 
0  322 
01234

注意在第二趟换到第三趟,桶0-4假想为空的,从第二趟桶中,从左往右,从下往上的填桶

然后输出

算法证明:

第n趟的结果,对于每一列,最后n个数字组成的数从下往上是增大的

不好证明,举例子:

第一趟的10以内的数,按照顺序排了,在下一趟中,因为前导0,所以排在了第'0'列,从左往右的顺序从下往上的排可以保证由小到大

如果有33和34,第二趟就该

3334
34

在第二趟

34在33上面

在下一趟,就都应该在‘0’列由下往上33,34

转载于:https://www.cnblogs.com/gabygoole/p/4605817.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值