氣泡排序
(1)定義順序表的儲存結構;
(2)在順序表上實現氣泡排序;
(3)將普通的氣泡排序進行多次改進以提高排序速度,並用大量資料測試其速度的提高。
快速排序
(1)定義順序表的儲存結構;
(2)在順序表上實現快速排序;
(3)用大量的資料測試最好、最壞和平均情況下的排序速度。
堆排序(1)定義順序表的儲存結構;
(2)在順序表上實現堆排序;
(3)用大量的資料測試最好、最壞和平均情況下的排序速度。
4.比較各種排序方法的優缺點和適用場合
第一題
#include
#include
#include
using
namespace std;
//定義順序表的儲存結構;
typedef
struct
redtype;
typedef
struct
sqlist;
//順序表型別
void
creatsq
(sqlist &l)
void
print
(sqlist l)
//(2)在順序表上實現氣泡排序;
void
bubblesort_a
(sqlist &l)}}
print
(l);
}//冒泡法第一步優化
//若在一次排序中沒有發生交換,說明此時已經全部有序無需再進行掃瞄
//增加乙個標記,記錄是否進行過交換
void
bubblesort_b
(sqlist &l)}if
(!flag)
break
;//若沒有排序,序列有序,退出
}print
(l);
}//若上次排序位置為end,表示end-n的數已經有序,下次排序不需要再遍歷
第二題
#include
#include
#include
using
namespace std;
//定義順序表的儲存結構;
typedef
struct
redtype;
typedef
struct
sqlist;
//順序表型別
void
creatsq
(sqlist &l)
void
print
(sqlist l)
intpatition
(sqlist &l,
int low,
int high)
l.r[low]
= l.r[0]
;//樞軸記錄到位
return low;
//返回樞軸位置
第三題
#include
#include
#include
using
namespace std;
//定義順序表的儲存結構;
typedef
struct
redtype;
typedef
struct
sqlist;
//順序表型別
typedef sqlist heaptype;
void
creatsq
(sqlist &l)
void
print
(sqlist l)
void
heapadjust
(heaptype &h,
int s,
int m)
h.r[s]
= rc;
//插入
資料結構 實驗六 排序
本次實驗實現排序中的直接插入 氣泡排序 快速排序 簡單選擇排序 堆排序等排序演算法。下面放一下自己的 include include include datahead.h define maxsize 20typedef intkeytype typedef struct redtype typed...
六 排序的有關操作
一 實驗目的 1 掌握常見的排序演算法的思想及其適用條件。2 掌握常見的排序演算法的程式實現。二 實驗儀器及環境 pc計算機 windows xp作業系統 visual c 6.0 給出n個學生的考試成績表,每條資訊由姓名和分數組成,試設計乙個演算法 按分數高低次序,列印出每個學生在考試中獲得的名次...
資料結構實驗報告六(排序實
資料結構實驗報告六 排序實踐 我是qq 資料結構與演算法課程實驗報告 實驗六 排序實踐 姓名 班級 學號 實驗六排序實踐 一 實驗內容 實現各排序演算法,必須實現起泡排序 希爾排序和簡單選擇排序,其他排序演算法選做,並分析各演算法的效能。二 實驗目的 掌握各排序演算法的實現方法,並分析各排序演算法的...