编辑代码


import java.util.Arrays;
public class  {
	public static int arr[] = {3,44,38,5,47,15,36,26,27,2,46,4,19,50,48};
	private static void Sort() {
		int n = 1;
		int k = 0;
		int len = arr.length;
		int[][] quer = new int[10][len];
		int[] count = new int[len];
		int max=arr[0];
		for (int i = 0; i < arr.length; i++) {
			max = arr[i]>max?arr[i]:max;
		}
		while (n < max*10) {  
			for (int i=0; i<arr.length;i++) 
			{
				int tail= (arr[i]/ n) % 10;
				quer[tail][count[tail]] =arr[i];
				count[tail]++;
			}
			for (int i = 0; i < len; i++)
			{
				if (count[i] != 0)
				{
					for (int j = 0; j < count[i]; j++) {
						arr[k] = quer[i][j];
						k++;
					}
				}
				count[i] = 0;
			}
			n *= 10;
			k = 0;
		}
	}
	public static void main(String[] args) {
		Sort();
		System.out.println(Arrays.toString(arr));
	}
}