基数排序
2016-03-01 21:57
295 查看
对各个位置上的数,按分别按个位排序,倒入桶中,然后倒出后,按十位排序。。。。
public class RadixSort { public int[] radixSort(int[] A, int n) { // write code here List<List<Integer>> radixList = new ArrayList<>(); for (int i = 0; i < 10; i++) { radixList.add(i, new ArrayList<Integer>()); } for(int i = 1; i<=4;i++){ //数字为0~10000 此i为从个位起的第i位数 for(int j =0; j< n ;j++){ int tmp =(int) (A[j]/(Math.pow(10,i-1))) %10; //第i位的 数值 radixList.get(tmp).add(A[j]); } int index = 0; for (int k = 0; k < 10; k++) { while(radixList.get(k).size()!=0){ A[index++] = radixList.get(k).get(0); radixList.get(k).remove(0); } } } return A; } }
相关文章推荐
- Wikioi 1080一维树状数组
- win下如何解决在chrome的同源访问问题
- Android学习心得第四课
- Delete Last Element
- 魔卡少女
- Android 5.0之后 点击 悬浮穿回到顶部。
- Android Studio 1.5启动出现“SDK Manager: failed to install”问题的解决
- 差分约束
- centos 6.5 samba简单配置
- nodejsPath
- 7、压缩与解压缩
- 中序遍历二叉树——递归
- NYOJ+贪心+从大到小减,是有贪心根据的额
- uva10453
- LIS+输出路径模板(1160)
- 搭建自己的MVC框架
- 安装SQL Server 2014
- 2016年3月1号【运行出错,IndentationError: unindent does not match any outer indentation level】
- jQuery 实现导航栏 lable页
- 递归思想-汉诺塔解法