精品成人一区二区三区-国产精品黄色-婷婷色婷婷-av日韩-欧美在线综合-黄色影视在线观看

北京北大青鳥學校,北大青鳥北京校區:Java的排序之“基數排序”

北大青鳥北京通州學術部提供:

北大青鳥北京,北大青鳥學校學術部老師講解:什么是基數排序?

北大青鳥北京,北大青鳥學校解答:基數排序(radix sort)是屬于“分配式排序”(distribution sort),基數排序法又稱“桶子法”(bucket sort)或bin sort,顧名思義,它是透過鍵值的部份資訊,將要排序的元素分配至某些“桶”中,藉以達到排序的作用,基數排序法是屬于穩定性的排序,其時間復雜度為O (nlog(r)m),其中r為所采取的基數,而m為堆數,在某些時候,基數排序法的效率高于其它的比較性排序法。

效率分析:
時間效率:設待排序列為n個記錄,d個關鍵碼,關鍵碼的取值范圍為radix,則進行鏈式基數排序的時間復雜度為O(d(n+radix)),其中,一趟分配時間復雜度為O(n),一趟收集時間復雜度為O(n),共進行d趟分配和收集。 空間效率:需要2*radix個指向隊列的輔助空間,以及用于靜態鏈表的n個指針。(北大青鳥北京校區)

實現方法:
最高位優先(Most Significant Digit first)法,簡稱MSD法:先按k1排序分組,同一組中記錄,關鍵碼k1相等,再對各組按k2排序分成子組,之后,對后面的關鍵碼繼續這樣的排序分組,直到按最次位關鍵碼kd對各子組排序后。再將各組連接起來,便得到一個有序序列。 最低位優先(Least Significant Digit first)法,簡稱LSD法:先從kd開始排序,再對kd-1進行排序,依次重復,直到對k1排序后便得到一個有序序列。(北大青鳥北京校區)

代碼實現:
1. public class RadixSort {  
2. public static void sort(int[] number, int d) {  
3. int k=0;  
4. int n=1;  
5. int m=1;  
6. int[][] temp = new int[number.length][number.length];  
7. int[] order = new int[number.length];  
8. while(m <= d) {  
9. for(int i = 0; i < number.length; i++) {  
10. int lsd = ((number[i] / n) % 10);  
11. temp[lsd][order[lsd]] = number[i];  
12. order[lsd]++;  
13. }  
14. for(int i = 0; i < d; i++) {  
15. if(order[i] != 0)  
16. for(int j = 0; j < order[i]; j++) {  
17. number[k] = temp[i][j];  
18. k++;  
19. }  
20. order[i] = 0;  
21. }  
22. n *= 10;  
23. k = 0;  
24. m++;  
25. }  
26. }  
27. public static void main(String[] args) {  
28. int[] data =  
29. {73, 22, 93, 43, 55, 14, 28, 65, 39, 81, 33, 100};  
30. RadixSort.sort(data, 10);  
31. for(int i = 0; i < data.length; i++) {  
32. System.out.print(data[i] + " ");  
33. }  
34. } (北大青鳥北京校區)

北大青鳥北京校區老師提示:基數排序一般僅是用于記錄的關鍵字為整數類型的情況。

在已介紹的各種內部排序方法中,就所需要的計算時間來看,快速排序、歸并排序、堆排序是很好的方法。但是,歸并排序需要大小為n的輔助空間,快速排序需要一個棧。除了快速排序、堆排序、選擇排序、希爾排序不穩定外,其它排序方法都是穩定的。

北大青鳥北京校區老師提示:評價一個排序算法性能好壞的主要標準是它所需的計算時間和存儲空間。影響計算時間的兩個重要因素是比較關鍵字的次數和記錄的移動次數。在實際應用中,究竟應該選用何種排序方法,取決于具體的應用和機器條件。

北大青鳥網上報名
北大青鳥招生簡章
主站蜘蛛池模板: 国产欧美一区二区精品久久久 | 全部免费毛片在线 | 欧美日韩亚洲综合另类ac | 欧美三级欧美成人高清www | 九九视频免费精品视频免费 | 国产一级视频播放 | 国产美女视频黄a视频全免费网站 | a免费毛片在线播放 | 精品日本一区二区三区在线观看 | 国产成人十八黄网片 | 亚洲加勒比 | 91精品国产薄丝高跟在线看 | 一区二区三区免费精品视频 | 欧美 日韩 国产在线 | 欧美一区二区视频在线观看 | 欧美成人午夜不卡在线视频 | 成人午夜久久 | 欧美成人鲁丝片在线观看 | 久草视频在线资源 | 久久伊人网站 | 日韩色网站 | 国产成人福利视频网站 | 日韩欧美在线精品 | 久久久久久一品道精品免费看 | 国产一区二三区 | 六月丁香婷婷色狠狠久久 | 国产黄色片在线免费观看 | 国产一级做a爰片在线看免费 | 在线视频日韩 | 亚洲国产一区二区三区在线观看 | 国产一久久香蕉国产线看观看 | 全免费a级毛片免费看不卡 全免费毛片在线播放 | 日本伊人精品一区二区三区 | 国产在线一区二区三区四区 | 亚洲天堂2017 | 韩国一级性生活片 | 欧美日韩中文国产一区二区三区 | 女人张开腿给人桶免费视频 | 精品国产无限资源免费观看 | 97欧美精品一区二区三区 | 视频一区 在线 |