轉載http://blog.csdn.net/Shayabean_/article/details/44885917博客
先說說基數排序的思想:
基數排序是非比較型的排序算法,其原理是將整數按位數切割成不同的數字,然後按每個位數分別比較。
將所有待比較數值(正整數)統一為同樣的數位長度,數位較短的數前面補零。然後,從最低位開始,依次進行一次排序。在每一次排序中,按照當前位把數組元素放到對應
的桶當中,然後把桶0到桶9中的元素按先進先出的方式放回數組中。這樣從最低位排序一直到最高位排序完成以後, 數列就變成一個有序序列。
這個版本的基數排序RadixSort(L,max)較RadixSort(L)不同的是需要輸入待排序列最大數的位數。因為RadixSort(L)最大數位在程序中已經計算過了,因為需要計算最大數,所以需要對待排鏈表最開始循環一次,所以RadixSort(L,max)速度比RadixSort(L)稍快。