第十六周專案一 驗證演算法 歸併排序

2021-07-25 07:10:44 字數 1047 閱讀 6646

問題及**:

/*       

*煙台大學計算機與控制工程學院

*作 者:孫麗瑋

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

(1)直接插入排序;(2)希爾排序;(3)氣泡排序;(4)快速排序;(5)直接選擇排序;(6)堆排序;(7)歸併排序;(8)基數排序。

*/

#include #include #define maxsize 20

typedef int keytype; //定義關鍵字型別

typedef char infotype[10];

typedef struct //記錄型別

rectype; //排序的記錄型別定義

void merge(rectype r,int low,int mid,int high)

else //將第2段中的記錄放入r1中

while (i<=mid) //將第1段餘下部分複製到r1

while (j<=high) //將第2段餘下部分複製到r1

for (k=0,i=low; i<=high; k++,i++) //將r1複製回r中

r[i]=r1[k];

}void mergepass(rectype r,int length,int n) //對整個數序進行一趟歸併

{ int i;

for (i=0; i+2*length-1

執行結果:

總結:歸併排序:兩個順序序列合併成乙個順序序列(兩兩歸併)。將已有序的子串行合併,得到完全有序的序列;即先使每個子串行有序,再使子串行段間有序。若將兩個有序表合併成乙個有序表,稱為二路歸併。

第十六周專案1(7)驗證演算法 歸併排序

問題及 煙台大學計算機與控制工程學院 作 者 孫啟先 完成日期 2016年12月15日 問題描述 用序列作為測試資料,驗證歸併排序。include include define maxsize 20 typedef int keytype 定義關鍵字型別 typedef char infotype ...

第十六周專案1 (7)驗證演算法歸併排序

問題及 cpp view plain copy 檔名稱 專案1.cpp 作 者 陳曉琳 完成日期 2016年12月16日 版 本 號 v1.0 問題描述 驗證歸併排序 輸入描述 無 程式輸出 測試資料 歸併排序 cpp view plain copy include include define m...

第十六周專案1 (7)驗證演算法歸併排序

問題及 cpp view plain copy 檔名稱 專案1.cpp 作 者 朱建豪 完成日期 2016年12月30日 版 本 號 v1.0 問題描述 驗證歸併排序 輸入描述 無 程式輸出 測試資料 歸併排序 cpp view plain copy include include define m...