排序演算法整合 杉杉

2022-12-28 10:51:05 字數 1227 閱讀 5781

《資料結構》

課程設計說明書

內蒙古科技大學課程設計任務書

目錄第1章需求分析 4

第2章總體設計 5

第3章抽象資料型別定義 6

3.1 排序抽象資料型別的設計 6

第4章詳細設計 7

4.1 工程檢視 7

4.2 類圖檢視 7

4.3 函式的呼叫關係 8

4.4 主程式流程圖 9

4.5 主要演算法的流程圖 10

第5章測試 16

第6章總結 20

附錄:程式** 21

排序演算法整合:

定義動態陣列類(或類模板)以表示待排序資料,在此基礎上實現多種排序演算法。

要求設計函式模板來實現下列排序演算法:

直接插入排序

氣泡排序

簡單選擇排序

希爾排序

快速排序

堆排序並設計主函式測試動態陣列類(或類模板),測試各排序演算法的函式模板。

本系統是輸入待排序的資料,通過人為的選擇是利用哪種排序進行運算,運算之後,將排好序的結果輸出,並且可以進行多組資料的操作。

圖2.1 主要設計思想流程圖

定義格式如下:

class sort ;

圖 4.1.1 源**檔案顯示

圖 4.2.1 類圖檢視顯示

圖 4.3.1 函式呼叫關係

是圖 4.4.1 主程式流程圖

是j++ 否是

否是否是

圖4.4.1選擇排序流程圖

圖 4.4.2 快速排序流程圖是否

是圖 4.4.3 氣泡排序流程圖

i++否是是

否j++是否

是是k-- 否是

圖4.4.4 直接插入排序流程圖

圖 4.4.5 希爾排序流程例圖

否i--是

否是圖4.4.6 堆排序流程圖

圖 5.1 開始介面

圖 5.2 輸入資料及選單顯示

圖 5.3 簡單選擇排序結果顯示

圖5.4 快速排序結果顯示

圖5.5 氣泡排序結果顯示

圖5.6 直接插入排序結果顯示

圖5.7 希爾排序結果顯示

圖5.8 堆排序結果顯示

經過了兩個星期的課程設計,我體會頗多,學到很多東西。利用設計排序演算法整合系統的機會,我加強了對資料結構的理解,複習了自己以前的知識,提高了邏輯思考能力。

排序演算法總結

常見的排序方式有6種 簡單排序裡面的有 插入排序 選擇排序 氣泡排序,時間複雜度為o n 2 線性對數階的排序 歸併排序 merge sort 快速排序,堆排序,時間複雜度為o nlogn 在n 50的情況下,最好使用插入排序或者選擇排序,由於選擇排序移動次數比插入排序少,在資料量比較多的情況,推薦...

排序演算法總結

按平均時間將排序分為四類 1 平方階 o n2 排序 一般稱為簡單排序,例如直接插入 直接選擇和氣泡排序 2 線性對數階 o nlgn 排序 如快速 堆和歸併排序 3 o n1 階排序 是介於0和1之間的常數,即0 1,如希爾排序 4 線性階 o n 排序 如桶 箱和基數排序。各種排序方法比較 簡單...

排序演算法總結

熱2已有 2573 次閱讀 2009 09 01 13 23 填問卷贏好書華章讀者調研活動結果公布 一 選擇排序 1.基本思想 每一趟從待排序的資料元素中選出最小 或最大 的乙個元素,順序放在已排好序的數列的最後,直到全部待排序的資料元素排完。2.排序過程 示例 初始關鍵字 49 38 65 97 ...