版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、算法設(shè)計與分析實驗報告(2016/2017學(xué)年第一學(xué)期)課程名稱算法分析與設(shè)計實驗名稱分治策略實驗時間2016年 10 月 18日指導(dǎo)單位計算機學(xué)院軟件教學(xué)中心指導(dǎo)教師季一木學(xué)生姓名周文超班級學(xué)號B學(xué)院(系)計算機學(xué)院、 軟件學(xué)院專業(yè)軟件工程實驗報告實驗名稱分治策略指導(dǎo)教師季一木實驗類型驗證實驗學(xué)時2實驗時間一、 實驗?zāi)康暮腿蝿?wù)1.理解分治法的算法思想,閱讀實現(xiàn)書上已有的部分程序代碼并完善程序, 加深對分治法的算法原理及實現(xiàn)過程的理解。2.用分治法實現(xiàn)一組無序序列的兩路合并排序和快速排序。要求清楚合并 排序及快速排序的基本原理,編程實現(xiàn)分別用這兩種方法將輸入的一組無序序列 排序為有序序列后輸出
2、。二、實驗環(huán)境(實驗設(shè)備) 算法設(shè)計與分析課本 筆記本電腦VC+三、實驗原理及內(nèi)容(包括操作過程、結(jié)果分析等)實驗原理運用分治法:無序-部分有序-整體有序歸并排序中“分”與“合”的過程是結(jié)合在一起的,即每一趟都在做“分” 與“合”的工作,并不是先“分”完再“合”基本程序(一)兩路合并排序ftincludeOclass SortableListpublic:SortableList (int mSize) /構(gòu)造函數(shù)maxSize 二 mSize;1 二 new intmaxSizeJ:n = 0;SortableList () delete J 1; /析構(gòu)函數(shù)void Input ():vo
3、id Merge(int left, int mid, int right):void MergeSort();void MergeSort(int left, int right):void Output ();private:int *1; 動態(tài)生成一維數(shù)組int maxSize: /線性表的最大表長int n; /線性表的實際長度;void SortableList:Input()for (int i 二 0;i<maxSize;i+)cin>>l i;n+;void SortableList:Merge(int left, int mid, int right) in
4、t *temp 二 new intrightleft+1;int i = left, j = mid +1, k = 0;while(i<=mid)&&(j<=right)tempk+=li+;elsetempk+二1j+;while (i<=mid)tempk+=1i+;while (j<=right)tempk+=lj+;for (i = 0,k=left;k<=right;)1 k+=tempi+;void SortableList:MergeSort()MergeSort (0, nT);void SortableList:MergeSor
5、t(int left,int right)if (left<right) /若序列的長度超過1,則劃分成兩個子序列 int mid = (left+right)/2;/將待排序的序列一分為二 MergeSort (left, mid) ;/對左序列排序MergeSort (mid+1, right) ;/對右序列排序Merge (left, mid, right) ;/將兩個有序子序列合并成一個有序序列 void SortableList:Output()for (int i = 0;i<maxSize;i+) cout«l i <<,z”;void main
6、() SortableList 1 (10);cout«,z請輸入 10 個數(shù):"«endl;0;0;cout«,/排序后是:,«endl;0;(二)快速排序itincludeOclass SortableListpublic:SortableList (int mSize) /構(gòu)造函數(shù)maxSize = mSize;1 = new intmaxSize;n = 0;SortableList() delete 1; /析構(gòu)函數(shù)void Input ();void Swap(int i, int j);int Partition(int left
7、,int right);void Quicksort(int left, int right);void Quicksort ();void Output ();private:int *1; 動態(tài)生成一維數(shù)組int maxSize; 線性表的最大表長int n; /線性表的實際長度;void SortableLis t: Input ()for (int i 二 0;i<maxSize;i+)cin>>l i;n+;void SortableList: :Swap(int i, int j) int c = 1 i;li = lj;lj = c;int SortableLi
8、st::Partition(int left, int right)/前置條件:left<=rightint i 二 left, j 二 right + 1:do do i+;while(1i<1left);do j-;while(1j>1left);if (i<j)Swap(i, j);while (i<j);Swap(left, j);return j;void SortableList::Quicksort()Quicksort(0, nl);void SortableList::Quicksort(int left,int right) if(left&l
9、t;right)當(dāng)序列長度大于1時,需進(jìn)行分割int j = Partition(left, right) ;/對left, right范圍內(nèi)的序列進(jìn)行分劃Quicksort (left, j-1) ;/對左子序列實施快速排序 Quicksort (j+1, right) ;/對右子序列實施快速排序 void SortableList:Output()for (int i = 0; KmaxSize; i+) cout«l i <<,z”;void main () SortableList 1 (10); cout<"請輸入 10 個數(shù):"<<endl; 0;0;cout«,/排序后是:,«endl;0;實驗結(jié)果兩路合并排序快速排序六、實驗小結(jié)(包括問題和解決方法、心得體
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《離婚法律程序執(zhí)行細(xì)則協(xié)議》版
- 二零二五版保險及期貨居間業(yè)務(wù)委托管理合同3篇
- 二零二五年度智慧社區(qū)商業(yè)配套租賃協(xié)議3篇
- 二零二五年度集成墻板原材料期貨交易與風(fēng)險管理合同2篇
- 二零二五年度高端人才引進(jìn)與培養(yǎng)合同5篇
- 臨時建筑建設(shè)合同樣本2024年版版B版
- 2025年度智能廚房設(shè)備研發(fā)、安裝與培訓(xùn)服務(wù)合同3篇
- 二零二五版公共工程合同擔(dān)保制度及操作細(xì)則3篇
- 二零二五年電子設(shè)備采購與技術(shù)服務(wù)合同2篇
- 2024年簡化版資金借用協(xié)議范本版B版
- DB-T29-74-2018天津市城市道路工程施工及驗收標(biāo)準(zhǔn)
- 小學(xué)一年級20以內(nèi)加減法混合運算3000題(已排版)
- 智慧工廠數(shù)字孿生解決方案
- 病機-基本病機 邪正盛衰講解
- 品管圈知識 課件
- 非誠不找小品臺詞
- 2024年3月江蘇省考公務(wù)員面試題(B類)及參考答案
- 患者信息保密法律法規(guī)解讀
- 老年人護(hù)理風(fēng)險防控PPT
- 充電樁采購安裝投標(biāo)方案(技術(shù)方案)
- 醫(yī)院科室考勤表
評論
0/150
提交評論