?? radixsort.h
字號(hào):
#include "LinQueue.h"
void RadixSort(DataType a[], int n, int m, int d)
//對(duì)對(duì)象a[0]--a[n-1]進(jìn)行關(guān)鍵碼為m位d進(jìn)制整型數(shù)值的基數(shù)排序
//桶采用鏈?zhǔn)疥?duì)列結(jié)構(gòu)
{
int i, j, k, power = 1;
LinQueue<DataType> *tub = new LinQueue<DataType>[d];
//進(jìn)行m次排序
for(i = 0; i < m; i++)
{
if(i == 0) power = 1;
else power = power *d;
//將對(duì)象按關(guān)鍵碼第k位的大小放到相應(yīng)的隊(duì)列中
for(j = 0; j < n; j++)
{
k = a[j].key /power - (a[j].key /(power * d)) * d;
tub[k].Append(a[j]);
}
//順序回收各隊(duì)列中的對(duì)象
for(j = 0, k = 0; j < d; j++)
while(tub[j].NotEmpty())
a[k++] = tub[j].Delete();
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -