8. 基数排序
思想 基数排序,是按照元素的更小元素组成来进行排序。拿常用的数字排序举例,会先对个位进行排序,然后对十位进行排序。 其中,关键是如何对个位进行排序,如何对十位进行排序。 我们知道对于数字的每一位,只有10个数字(0-9),这就是基数。所以故名,基数排序。基数排序所以可以理解为适用于基数是有限的情况下。 所以基数排序中的基数,相当于把计数排序中的计数数组的大小确定下来了。 那么如何对个位、十位进行排序呢?可以用到计数排序。 实现 import java.util.Arrays; public class RadixSort { public static void main(String[] args) { int[] array = { 1200, 292, 121, 72, 233, 44, 12 }; radixSort(array, 10, 4); System.out.println(Arrays.toString(array)); } public static void radixSort(int[] array, int radix, int d){ int[] tempArray = new int[array.length]; int[] count = new int[radix]; int rate = 1; for (int i = 0; i < d; i+