


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、需求報(bào)告排序?qū)嵺`小組成員:0209040104 邱瑤隹麗麗 雒文杰 云楠 曹德仲02090401060209040107020904011202090401230209040124程序功能本程序用以下幾種內(nèi)部排序算法:插入排序(直插,折半插入,2-路插入,表插),希爾排序,起泡排序,快速排序,選擇排序(簡單選擇排序和樹形選擇 排序),堆排序,歸并排序,實(shí)現(xiàn)利用隨機(jī)函數(shù)產(chǎn)生 30000個隨機(jī)整數(shù),并統(tǒng)計(jì) 以上各種算法的上機(jī)花費(fèi)時間。實(shí)現(xiàn)方法采取用戶與計(jì)算機(jī)直接對話的方式執(zhí)行, 在計(jì)算機(jī)終端顯示“提示信息”下, 用戶輸入隨機(jī)整數(shù),并選擇一種排序方法,排序后進(jìn)行時間復(fù)雜度計(jì)算,比較得 出最優(yōu)排序方法
2、。直接插入排序:在含有i-1個記錄的有序子序列r1.i-1中插入一個記錄ri,變成含有i個記錄的有序子序列r1.i, 在r0處設(shè)置監(jiān)視哨。先將序 列中的第一個記錄看成一個有序的子序列,然后從第二個記錄起,逐個進(jìn)行插 入,直至整個序列變成按關(guān)鍵字非遞減有序序列為止。折半插入排序:用“折半查找”來實(shí)現(xiàn)查找操作。2-路插入排序:設(shè)一個和l.r同類型的數(shù)組d,首先將L.r1賦值給d1,并 將d1看成是在排好序的序列中處于中間位置的記錄,然后從 L.r中第二個記錄 起,依次插入到d1之前或之后的有序序列中。先將待插記錄的關(guān)鍵字和 d1的關(guān)鍵字進(jìn)行比較,若L.ri.key<d1.key,則將L.ri
3、插入到d1之前的有序表中。反之則將L.ri插入到d1之后的有序表中。在實(shí)現(xiàn)算法時,可將 d看成 是一個循環(huán)向量,并設(shè)兩個指針first和fin al ,分別指示排序過程中得到的有序 序列中第一個記錄和最后一個記錄在 d中的位置。表插入排序:首先將靜態(tài)鏈表中數(shù)組下標(biāo)為“ 1”的分量(結(jié)點(diǎn))和表頭結(jié)點(diǎn) 構(gòu)成一個循環(huán)鏈表。然后依次將下標(biāo)為“ 2”至“n”的分量(結(jié)點(diǎn))按記錄關(guān)鍵 字非遞減有序插入到循環(huán)鏈表中,對記錄進(jìn)行重新排列,順序掃描有序鏈表,將鏈表中第i個結(jié)點(diǎn)移動到數(shù)組的第i個分量中。希爾排序:將整個待排序列分割成若干個子序列分別進(jìn)行直接插入排序,待整個序列中的記錄基本有序時,再對全體記錄進(jìn)行一
4、次直接插入排序。起泡排序:第i趟起泡排序是從L.r1至到L.rn-i+1依次比較相鄰兩個記錄 的關(guān)鍵字,并在“逆序”時交換相鄰記錄,其結(jié)果是在n-i+1個記錄中關(guān)鍵字最大的記錄被交換到第n-i+1的位置上,整個排序過程需進(jìn)行k (1<=k<n)趟起泡排 序,判別起泡排序結(jié)束的條件應(yīng)該是“在一趟排序過程中沒有進(jìn)行過交換記錄的操作”??炫牛和ㄟ^一趟排序?qū)⒂涗浄指畛瑟?dú)立的兩部分, 其中一部分記錄的關(guān)鍵字 均比另一部分記錄的關(guān)鍵字小,則可分別對這兩部分記錄繼續(xù)進(jìn)行排序, 以達(dá)到 整個序列有序。簡單選擇排序:通過n-i次關(guān)鍵字間的比較,從n-i+1個記錄中選出關(guān)鍵字最 小的記錄,并和的i(1
5、<=i<n)個記錄交換之,如此重復(fù),直到排序結(jié)束。樹形選擇排序:首先對n個記錄的關(guān)鍵字進(jìn)行兩兩比較,然后在其中n/2 個較小比較者之間再進(jìn)行兩兩比較,如此重復(fù),直到選出最小關(guān)鍵字的記錄為止。堆排序:是記錄序列按關(guān)鍵字非遞減有序排列,則在堆排序的算法中先建一個“大頂堆”,技先選得一個關(guān)鍵字最大得為最大的記錄并與序列中最后一個記 錄交換,然后對序列中前n-1個記錄進(jìn)行篩選,重新將它調(diào)整為一個“大頂堆”, 如此反復(fù),知道排序結(jié)束。歸并排序:假設(shè)初始序列含有n個記錄,則可看成是n個有序的子序列,每個 子序列的長度是1,然后兩兩歸并,得到n/2個長度為2或1的有序子序列,再兩 兩歸并,如此重復(fù),直到得到一個長度為 n的有序序列為止。四設(shè)計(jì)思路:快排歸并起泡選擇插入希爾堆排直插二路折半表插簡單樹形Break輸出結(jié)果退出主程序結(jié)束五數(shù)據(jù)來源:用隨機(jī)函數(shù)產(chǎn)生30000個隨機(jī)整數(shù)。六模塊分配:邱瑤:希爾排序,歸并排序郭 凱:直接插入排序,2-路插入排序 崔麗麗:折半插入排序,表插入排序 雒文杰:簡單選擇排序,樹形選擇排序 云 楠:快排,界面及主程序設(shè)計(jì) 曹德仲:起泡排序,堆排序七.總結(jié):通過小組成員一起對此課程設(shè)計(jì)題目的分析、 討論、及分工,使我們明確了 題目的要求,確立了思路及大概實(shí)現(xiàn)過程。
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 戀愛階段財(cái)產(chǎn)管理與婚姻規(guī)劃協(xié)議
- 出租車公司員工福利合作協(xié)議
- Brand KPIs for hotels:Fiesta Inn in Mexico-英文培訓(xùn)課件2025.5
- 2025年地質(zhì)與資源勘探考試試題及答案
- 2025年公共英語等級考試試題及答案
- 標(biāo)準(zhǔn)的研制與編制-廣東開放大學(xué)考試題庫及答案
- 2025年城市規(guī)劃專業(yè)研究生考試試題及答案
- 一年級數(shù)學(xué)教學(xué)方案(32篇)
- 企業(yè)常年財(cái)務(wù)顧問與內(nèi)部審計(jì)協(xié)議
- 餐飲行業(yè)供應(yīng)鏈保密合同模板
- 物業(yè)管理公司品質(zhì)管理手冊
- 儲備土地管護(hù)巡查方案
- 古代小說戲曲專題-形考任務(wù)2-國開-參考資料
- 24個專業(yè)105個病種中醫(yī)臨床路徑
- 校企合作技能培訓(xùn)協(xié)議
- 《供熱計(jì)量技術(shù)規(guī)程》JGJ173-2009
- 2024年江蘇省無錫市惠山區(qū)中考三??荚囄锢碓囶}
- 校服供貨服務(wù)方案
- 植物保護(hù)學(xué)II(園藝)智慧樹知到期末考試答案章節(jié)答案2024年浙江大學(xué)
- 19S406建筑排水管道安裝-塑料管道
- 化工施工安全技術(shù)交底
評論
0/150
提交評論