Java算法之基数排序
来源:互联网 发布:淘宝美工职业规划 编辑:程序博客网 时间:2024/05/21 09:22
举例:要排序的数组 int[] arr={7,9,8,4,5,1,6,3,2,0};
从小到大排列:
/*基数排序*/public class RadixSort {public static void main(String[] args) {int[] arr={7,9,8,4,5,1,6,3,2,0};int k = 0; int n = 1; int m = 1; //控制键值排序依据在哪一位 int[][]temp = new int[10][arr.length]; //数组的第一维表示可能的余数0-9 int[] order = new int[10]; //数组order用来表示该位是i的数的个数 while(m<=arr.length) { for(int i=0;i<arr.length;i++) { int lsd=((arr[i]/n)%10); temp[lsd][order[lsd]]=arr[i]; order[lsd]++; } for(int i=0;i<10;i++) { if(order[i]!=0) for(int j=0;j<order[i];j++) { arr[k]=temp[i][j]; k++; } order[i]=0; } n*=10; k=0; m++; }for(int b=0;b<arr.length;b++){//输出 System.out.println(arr[b]);}}}运行结果:
0123456789实现过程:将所有待比较的正整数统一为同样的数位长度,数位较短的数前面补零。然后,从最低位开始,依次进行一次排序。这样从最低位排序一直到最高位排序完成以后,数列就变成一个有序序列。
阅读全文
1 0
- java算法之基数排序
- Java算法之基数排序
- 排序算法之基数排序(JAVA)
- 基数排序算法之Java实现
- Java排序算法之基数排序
- Java实现-高效排序算法之基数排序
- 八大排序算法之-基数排序 java代码
- 排序算法之基数排序
- 排序算法之基数排序
- 排序算法之基数排序
- 排序算法之基数排序
- 排序算法之基数排序
- 算法复习之基数排序
- 【排序算法】之基数排序
- 排序算法之基数排序
- 排序算法之基数排序
- 排序算法之基数排序
- 排序算法之基数排序
- MySQL—浅谈优化
- python设计模式(建造者模式)
- Spark Streaming入门
- 考试总结14
- 极限优化WordPress!打造完美站点
- Java算法之基数排序
- NLP08-Gensim源码简析[ShardedCorpus&UciCorpus&LowCorpus]
- SpringBoot学习——No.1
- 利用WinForm的textBox实现控制台的Console.WriteLine
- Android 7.0以上调用相机崩溃
- MapReduce中combine、partition、shuffle的作用是什么
- [JZOJ5445]失格
- 利用Lambda表达式从实体集合中筛选出符合条件的实体集合
- 交叉编译lzo