本次實驗實現排序中的直接插入、氣泡排序、快速排序、簡單選擇排序、堆排序等排序演算法。
下面放一下自己的**:
#include #include#include
"datahead.h
"#define maxsize 20typedef
intkeytype;
typedef
struct
redtype;
typedef
struct
sqlist;
typedef sqlist heaptype;
//堆採用順序表儲存表示
void
main()
printf("\n
");system(
"pause");
}system(
"pause");
}bool eq(keytype a, keytype b)
bool lt(keytype a, keytype b)
bool lq(keytype a, keytype b)
void createsqlist(sqlist &l)
printf(
"\n\n順序表建立完成!\n\n");
}void
showlist(sqlist l)
}void insertsort(sqlist &l)
} //
insertsort
int partition(sqlist &l, int low, int high)
l.r[low] = l.r[0]; //
樞軸記錄到位
return low; //
返回樞軸位置
} //
partition
//int partition(sqlist &l, int low, int high)
//return low;
//返回樞軸所在位置
//}
//partition
void qsort(sqlist &l, int low, int high)
} //
qsort
void quicksort(sqlist &l)
//quicksort
//在l.r[i..l.length]中選擇key最小的記錄
int selectminkey(sqlist l, int
i) }
returnk;}
void selectsort(sqlist &l)
}} //selectsort
void heapadjust(heaptype &h, int s, int m)
h.r[s] = rc; //
插入} //
heapadjust
void heapsort(heaptype &h)
} //
heapsort
//氣泡排序
void bubblesort(sqlist &l)
}}}//
bubble_sort
資料結構實驗報告六(排序實
資料結構實驗報告六 排序實踐 我是qq 資料結構與演算法課程實驗報告 實驗六 排序實踐 姓名 班級 學號 實驗六排序實踐 一 實驗內容 實現各排序演算法,必須實現起泡排序 希爾排序和簡單選擇排序,其他排序演算法選做,並分析各演算法的效能。二 實驗目的 掌握各排序演算法的實現方法,並分析各排序演算法的...
實驗六 排序綜合
氣泡排序 1 定義順序表的儲存結構 2 在順序表上實現氣泡排序 3 將普通的氣泡排序進行多次改進以提高排序速度,並用大量資料測試其速度的提高。快速排序 1 定義順序表的儲存結構 2 在順序表上實現快速排序 3 用大量的資料測試最好 最壞和平均情況下的排序速度。堆排序 1 定義順序表的儲存結構 2 在...
六 排序的有關操作
一 實驗目的 1 掌握常見的排序演算法的思想及其適用條件。2 掌握常見的排序演算法的程式實現。二 實驗儀器及環境 pc計算機 windows xp作業系統 visual c 6.0 給出n個學生的考試成績表,每條資訊由姓名和分數組成,試設計乙個演算法 按分數高低次序,列印出每個學生在考試中獲得的名次...