第十六周專案1 (8)驗證演算法基數排序

2021-07-25 10:32:17 字數 2150 閱讀 2662

問題及**:

[cpp]view plain

copy

/*     

* 檔名稱:專案1.cpp     

* 作    者:陳曉琳

* 完成日期:2023年12月16日     

* 版 本 號:v1.0     

* 問題描述:驗證基數排序     

* 輸入描述:無     

* 程式輸出:測試資料     */

基數排序**:

[cpp]view plain

copy

#include 

#include 

#include 

#define maxe 20         //線性表中最多元素個數    

#define maxr 10         //基數的最大取值    

#define maxd 8          //關鍵字位數的最大取值    

typedef

struct

node      

rectype;      

void

crealink(rectype *&p,

char

*a,int

n);      

void

displink(rectype *p);      

void

radixsort(rectype *&p,

intr,

intd) 

//實現基數排序:*p為待排序序列鍊錶指標,r為基數,d為關鍵字位數    

else

p=p->next;                  //取下乙個待排序的元素    

}      

p=null;                         //重新用p來收集所有結點    

for(j=0; j//對於每乙個鏈隊迴圈    

if(head[j]!=null)          

//進行收集    

else

}      

t->next=null;                   //最後乙個結點的next域置null    

//以下的顯示並非必要    

printf("  按%d位排序\t"

,i);      

displink(p);      

}      

}      

void

createlink(rectype *&p,

char

a[maxe][maxd],

intn)   

//採用後插法產生鍊錶    

else

}      

t->next=null;      

}      

void

displink(rectype *p)   

//輸出鍊錶    

printf("\n"

);      

}      

intmain()      

;      

for(i=0; i//將b[i]轉換成字串    

a[i][j]='\0'

;      

}      

createlink(p,a,n);      

printf("\n"

);      

printf("  初始關鍵字\t"

);        

//輸出初始關鍵字序列    

displink(p);      

radixsort(p,10,2);      

printf("  最終結果\t"

);         

//輸出最終結果    

displink(p);      

printf("\n"

);      

return

0;      

}      

執行結果:

第十六周專案1(8)驗證演算法 基數排序

問題及 煙台大學計算機與控制工程學院 作 者 孫啟先 完成日期 2016年12月15日 問題描述 用序列作為測試資料,驗證基數排序。include include include define maxe 20 線性表中最多元素個數 define maxr 10 基數的最大取值 define maxd...

第十六周 驗證演算法(基數排序)

all right reserved.date 2015年12月14日 版本 v1.0.1 作業系統 xp 執行環境 vc6.0 問題描述 用序列作為測試資料,include include include define maxe 20 線性表中最多元素個數 define maxr 10 基數的最大...

第十六周 專案5演算法驗證基數排序

all right reserved.檔名稱 houzhui.cpp 作 者 商文軻 完成日期 2015年12月18日 版 本 號 v1.9 include include include define maxe 20 線性表中最多元素個數 define maxr 10 基數的最大取值 define...