程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 排序算法----基數排序(RadixSort(L,max))單鏈表版本,radixsort單鏈

排序算法----基數排序(RadixSort(L,max))單鏈表版本,radixsort單鏈

編輯:關於C語言

排序算法----基數排序(RadixSort(L,max))單鏈表版本,radixsort單鏈


轉載http://blog.csdn.net/Shayabean_/article/details/44885917博客

先說說基數排序的思想:   

基數排序是非比較型的排序算法,其原理是將整數按位數切割成不同的數字,然後按每個位數分別比較。

 

將所有待比較數值(正整數)統一為同樣的數位長度,數位較短的數前面補零。然後,從最低位開始,依次進行一次排序。在每一次排序中,按照當前位把數組元素放到對應        

的桶當中,然後把桶0到桶9中的元素按先進先出的方式放回數組中。這樣從最低位排序一直到最高位排序完成以後, 數列就變成一個有序序列。

 

這個版本的基數排序RadixSort(L,max)較RadixSort(L)不同的是需要輸入待排序列最大數的位數。因為RadixSort(L)最大數位在程序中已經計算過了,因為需要計算最大數,所以需要對待排鏈表最開始循環一次,所以RadixSort(L,max)速度比RadixSort(L)稍快。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved