第十六周 專案1 驗證演算法(4) 快速排序

2021-07-25 07:04:11 字數 1025 閱讀 1278

問題及**:

/*     

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

*作 者:張曉彤

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

*問題描述:用序列作為測試資料,驗證快速排序

*/

(1)以第1個元素作為基準

#include #define maxsize 20    

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

typedef char infotype[10];

typedef struct //記錄型別

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

void quicksort(rectype r,int s,int t) //對r[s]至r[t]的元素進行快速排序

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

void quicksort1(rectype r,int s,int t) //對r[s]至r[t]的元素進行快速排序

{

int i=s,j=t;

keytype pivot;

rectype tmp;

pivot = r[(s+t)/2].key; //用區間的中間位置的元素作為關鍵字

if (si && r[j].key>pivot)

j--; //從右向左掃瞄,找第1個小於基準的r[j]

知識點總結:

取乙個元素為基準,將該元素放在恰當位置,將它與所有的關鍵字比較,比他大的在後面,比他小的在前面。

學習心得:

理清排序的思路

第十六周專案(1) 驗證演算法4 快速排序

問題及 煙台大學計算機與控制工程學院 作 者 楊甯 完成日期 2015年12月14日 問題描述 用序列作為測試資料,驗證快速排序。include define maxsize 20 typedef int keytype 定義關鍵字型別 typedef char infotype 10 typede...

(第十六周專案1)驗證演算法(4)快速排序

問題 檔名稱 專案1 4 cpp 作 者 黃玉嬌 完成日期 2016年12月15日 版 本 號 v1.0 問題描述 驗證快速排序 輸入描述 無 程式輸出 測試資料 1.以第1個元素作為基準 include define maxsize 20 typedef int keytype 定義關鍵字型別 t...

第十六周 專案1 驗證演算法 快速排序

檔名稱 1.cpp 作 者 楊俊傑 完成日期 2016年 12月15日 版 本 號 v1.0 問題描述 輸出描述 快速排序 1 以第乙個元素為基準 cpp view plain copy include define maxsize 20 typedef intkeytype 定義關鍵字型別 typ...