資料結構實驗報告實驗六排序演算法

2021-03-03 23:54:00 字數 1107 閱讀 5346

昆明理工大學資訊工程與自動化學院學生實驗報告

( 201 —201 學年第一學期 )

課程名稱:資料結構開課實驗室年月日

一.實驗內容:

排序演算法,包括直接插入排序,希爾排序,氣泡排序,快速排序,直接選擇排序,堆排序等等。

二.實驗目的:

1.掌握各種查詢演算法理解和實現;

2.增強上機程式設計除錯能力

三.主要程式**分析:

void insertsort(datatype a,int n) //直接插入排序

a[j+1]=temp插入a[i]

}}void selectsort(datatype a,int n) //選擇排序

}}void bubblesort(datatype a,int n氣泡排序

}}}四.程式執行結果:

五.實驗總結:

排序是資料處理中經常使用的一種重要運算。我們在以前程式設計的時候就接觸過,但是經過這次上機實驗,我對排序有了更深的認識。以下就是我對排序一些新的認識:

氣泡排序屬於穩定排序,是一種借助「交換」進行排序的方法。首先要將第乙個記錄的關鍵字和第二個記錄的關鍵字進行比較,若為逆序,則將兩個記錄交換之,然後比較第二個記錄與第三個記錄的關鍵字,以此類推,直至第n-1個記錄與第n個記錄的關鍵字進行比較為止。 直接插入排序屬於穩定的排序,每次從無序表中取出第乙個元素,把它插入到有序表的合適位置,使有序表仍然有序。

第一趟將待比較的數值與它的前乙個數值進行比較,當前一數值比待比較數值大的情況下繼續迴圈比較,依次進行下去,進行了(n-1)趟掃瞄以後就完成了整個排序過程,結束該次迴圈。選擇排序屬於不穩定排序,基本思想是每一趟在n-i+1(i=1,2,…n-1)個記錄中選取關鍵字最小的記錄作為有序序列中第i個記錄。第i趟簡單選擇排序是指通過n-i次關鍵字的比較,從n-i+1個記錄中選出關鍵字最小的記錄,並和第i個記錄進行交換。

共需進行n-1趟比較,直到所有記錄排序完成為止。希爾排序屬於不穩定排序,也是一種屬插入排序類,它的基本思想是:先將整個待排記錄序列分割稱為若干個子串行分別進行直接插入排序,待整個序列中記錄「基本有序」時,再對全體記錄進行一次直接插入排序。

我們要在不斷地學習中總結經驗,要能夠很好的掌握排序演算法,這樣一點一點的進步,我們的程式設計能力才回有所提高。

實驗六排序綜合實驗

實驗型別 綜合性 實驗要求 必修 實驗學時 3學時 一 實驗目的 參照各種排序演算法程式樣例,驗證給出的排序常見演算法。二 實驗要求 1 掌握各種排序演算法的特點,測試並驗證排序的常見演算法。2 提交實驗報告,報告內容包括 目的 要求 演算法描述 程式結構 主要變數說明 程式清單 除錯情況 設計技巧...

資料結構實驗9排序子系統

1 實驗目的 1 掌握常用排序方法的基本思想。2 通過實驗加深理解各種排序演算法。3 通過實驗掌握各種排序方法的時間複雜度分析。4 了解各種排序方法的優缺點及適用範圍。2 實驗內容 1 編寫直接插入排序程式。2 編寫希爾排序程式。3 編寫氣泡排序程式。4 編寫快速排序程式。5 編寫選擇排序程式。6 ...

資料結構排序實驗報告

課程資料結構 實驗名稱實驗六 內部排序院系專業班級實驗地點 姓名學號實驗時間 指導老師實驗成績批改日期 一.實驗目的 1.熟悉相關的排序演算法 二.實驗內容及要求 1.實現兩種排序演算法 三.實驗過程及結果 實驗過程 源程式 include void main void charu a i 1 m ...