package sort;
public class radixsort {
public static void main(String[] args) {
int[] s = {9, 8, 7, 6, 0};
radixsort(s);
for (int i = 0; i <s.length ; i++) {
System.out.println(s[i]);
}
}
public static void radixsort(int[] arr)
{
int max=arr[0];
for (int i = 0; i < arr.length; i++) {
if (arr[i]>max)
{
max=arr[i];
}
}
String m=max+"";
int a=m.length();
int[][] buket=new int[10][arr.length];
int[] count=new int[10];
for (int i = 0,n=1; i <a ; i++,n*=10) {
for (int j = 0; j <arr.length ; j++) {
int num= arr[j]/n % 10;
buket[num][count[num]]=arr[j];
count[num]++;
}
}
int temp = 0;
for (int i = 0; i < buket.length; i++) {
if (count[i]!=0)
{
for (int j = 0; j <count[i] ; j++) {
arr[temp++]=buket[i][j];
}
}
}
}
}
转载请注明原文地址:https://blackberry.8miu.com/read-893.html