第十五周專案1(2) 驗證直接插入排序演算法

2021-07-25 10:22:49 字數 2942 閱讀 9936

/*  

* 檔名稱:專案1.cpp  

* 作    者:renjiafeng

* 版 本 號:v1.0   

*問題描述:驗證直接插入排序,完成測試。   

*輸入描述:無  

*程式輸出:測試資料  

直接插入排序:

#include 

#define maxsize 20

typedef

intkeytype;    

//定義關鍵字型別

typedef

char

infotype[10];  

typedef

struct

//記錄型別

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

void

insertsort(rectype r,

intn) 

//對r[0..n-1]按遞增有序進行直接插入排序

r[j+1]=tmp;      //在j+1處插入r[i]

}  }  

intmain()  

;  for

(i=0; i

r[i].key=a[i];  

printf("排序前:"

);  

for(i=0; i

printf("%d "

,r[i].key);  

printf("\n"

);  

insertsort(r,n);  

printf("排序後:"

);  

for(i=0; i

printf("%d "

,r[i].key);  

printf("\n"

);  

return

0;  

}  

運算結果:

//定義關鍵字型別

typedef

char

infotype[10];  

typedef

struct

//記錄型別

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

void

insertsort(rectype r,

intn) 

//對r[0..n-1]按遞增有序進行直接插入排序

r[j+1]=tmp;      //在j+1處插入r[i]

printf("i=%d: "

,i);  

for(k=0; k

printf("%d "

,r[k].key);  

printf("\n"

);  

}  }  

intmain()  

;  for

(i=0; i

r[i].key=a[i];  

printf("排序前:"

);  

for(i=0; i

printf("%d "

,r[i].key);  

printf("\n"

);  

insertsort(r,n);  

printf("排序後:"

);  

for(i=0; i

printf("%d "

,r[i].key);  

printf("\n"

);  

return

0;  

}  

顯示直接插入的過程:

運算結果:

折半插入排序:

#include 

#define maxsize 20

typedef

intkeytype;    

//定義關鍵字型別

typedef

char

infotype[10];  

typedef

struct

//記錄型別

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

void

insertsort1(rectype r,

intn) 

//對r[0..n-1]按遞增有序進行直接插入排序

for(j=i-1; j>=high+1; j--)  

r[j+1]=r[j];  

r[high+1]=tmp;  

}  }  

intmain()  

;  for

(i=0; i

r[i].key=a[i];  

printf("排序前:"

);  

for(i=0; i

printf("%d "

,r[i].key);  

printf("\n"

);  

insertsort1(r,n);  

printf("排序後:"

);  

for(i=0; i

printf("%d "

,r[i].key);  

printf("\n"

);  

return

0;  

}  

運算結果:

第十五周專案1 (2) 驗證直接插入排序

問題 檔名稱 專案1.cpp 作 者 陳晨 完成日期 2016年12月5日 版 本 號 v1.0 問題描述 驗證直接插入排序,完成測試。輸入描述 無 程式輸出 測試資料 1.直接插入排序 include define maxsize 20 typedef int keytype 定義關鍵字型別 ty...

第十五周 專案1 (2) 驗證直接插入排序

問題及 1.直接插入排序 include define maxsize 20 typedef int keytype 定義關鍵字型別 typedef char infotype 10 typedef struct 記錄型別 rectype 排序的記錄型別定義 void insertsort rect...

第十五周專案1 (2)直接插入排序

問題及 檔名稱 ccc.cpp 作 者 陳夢雪 完成日期 2016年12月15日 版 本 號 v1.0 問題描述 請用直接插入排序演算法,完成序列的排序 輸入描述 無 程式輸出 測試資料 include define maxsize 20 typedef int keytype 定義關鍵字型別 ty...