[JAVA]基數排序法(Radix sort)

需要二維陣列:第一維用來表示第幾個桶,第二維用來儲存符合x位數基數的值
需要一維陣列:用來表示二維陣列的每個桶,儲存幾個值
每個桶的空間:以待排序陣列長度為基準
步驟:1. 先找出最大值,並得出最大值位數 => 基數排序進行的次數,假設最大值為百位數,那基數排序會排序3次
2. 求出個位數基數,將值依序放入二維陣列中
3. 紀錄每個桶放入幾個數 => 入一維陣列
4. 取出二維陣列的值放回原待排序陣列,並清空二維陣列、一維陣列做為下一次排序使用

...繼續閱讀 »