![數(shù)據(jù)結(jié)構(gòu)課堂習(xí)題4_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/274e35c2-9a7d-4d61-a84d-0de625590540/274e35c2-9a7d-4d61-a84d-0de6255905401.gif)
![數(shù)據(jù)結(jié)構(gòu)課堂習(xí)題4_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/274e35c2-9a7d-4d61-a84d-0de625590540/274e35c2-9a7d-4d61-a84d-0de6255905402.gif)
![數(shù)據(jù)結(jié)構(gòu)課堂習(xí)題4_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/274e35c2-9a7d-4d61-a84d-0de625590540/274e35c2-9a7d-4d61-a84d-0de6255905403.gif)
![數(shù)據(jù)結(jié)構(gòu)課堂習(xí)題4_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/274e35c2-9a7d-4d61-a84d-0de625590540/274e35c2-9a7d-4d61-a84d-0de6255905404.gif)
![數(shù)據(jù)結(jié)構(gòu)課堂習(xí)題4_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/274e35c2-9a7d-4d61-a84d-0de625590540/274e35c2-9a7d-4d61-a84d-0de6255905405.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第10章 內(nèi)部排序第9章 排序選擇題1下列排序方法中,哪一種是穩(wěn)定的排序方法:(B)A)選擇排序 B )歸并排序 C)快速排序 D)希爾排序2快速排序每次劃分的效果好壞和以下何種因素有直接關(guān)系:(C )A)關(guān)鍵字的排列情況 B)數(shù)據(jù)元素的個(gè)數(shù) C )軸的相對(duì)大小 D)關(guān)鍵字值的最大值3對(duì)以下幾個(gè)關(guān)鍵字序列進(jìn)行快速排序,以第一個(gè)元素為軸,一次劃分效果最好的是:( c)A)1,2,3,4,5 B)2,1,3,4,5 C )3,1,2,4,5 D)5,3,1,2,44對(duì)以下幾個(gè)關(guān)鍵字序列進(jìn)行快速排序,以第一個(gè)元素為軸,一次劃分效果不好的是:(D)A)4,1,2,3,6,5,7 B)4,3,1,7,6
2、,5,2C)4,2,1,3,6,7,5 D )1,2,3,4,5,6,75設(shè)待排序數(shù)據(jù)元素序列為4,1,2,3 ,應(yīng)用一種排序方法進(jìn)行遞增序排序,已知一趟后的結(jié)果為1,2,3,4 ,則所選用的排序方法為:( C )A)直接插入 B)直接選擇 C )冒泡(從前向后) D)C 冒泡(從后向前)6排序方法中,關(guān)鍵字的比較次數(shù)與記錄的初始排列無關(guān)的是:(C )A)希爾排序 B)歸并排序(有關(guān)) C )直接選擇排序 D)直接插入排序7下列字符序列中,不符合堆定義的為:(C)A)ACDGHMPQRXB)ACMDHPXGQR C)ADPRCQXMHGD)ADCMPGHXRQ三、填空題 1 排序是指將無序的數(shù)
3、據(jù)元素序列轉(zhuǎn)變成一個(gè)有序序列,把序列中的記錄,通過某些方法整理成按 關(guān)鍵字 遞增或遞減次序排列的處理過程。2 排序算法分成 內(nèi)部排序算法 和 外部排序算法 。3 排序算法的穩(wěn)定性是指 關(guān)鍵字值 相同的記錄經(jīng)過排序后的 相對(duì)位置 是否發(fā)生變化,永不發(fā)生變化的排序算法,就是 穩(wěn)定的 ;否則就是 不穩(wěn)定的 。4 排序算法的基本操作是 關(guān)鍵字的比較 和 關(guān)鍵字的移動(dòng) 。5 排序算法的 時(shí)間效率 取決于關(guān)鍵字的比較和記錄的移動(dòng)等基本操作的次數(shù)。1對(duì)插入、選擇、快速、和歸并四種排序算法,回答下列問題。)(1)在待排序的元素序列基本有序時(shí),效率最高的排序方法是那一種?答:插入排序(2)排序要求內(nèi)存量最大的排
4、序方法是那一種?答:歸并排序(3)關(guān)鍵字比較次數(shù)與元素的初始排列次序無關(guān)的排序方法是那一種?答:選擇排序(4)寫出其中排序不穩(wěn)定的方法。答:選擇排序、快速排序2 設(shè)有6 0 0 0個(gè)無序的元素,若希望最快的選出前l(fā) 0個(gè)最大的元素,問在快速排序、堆排序、歸并排序、希爾排序中,采用那種算法最好?為什么?解答:雖然這些都是高速排序,但快速排序、歸并排序、希爾排序和基數(shù)排序都是排序結(jié)束后才能最后決定數(shù)據(jù)元素的個(gè)數(shù)的次序。而堆排序則是每次就取出一個(gè)最大的元素,只要10次就能取出10個(gè)最大的元素。因此堆排序最好。5、以關(guān)鍵字序列(265,301,751,129,937,863,742,694,076,4
5、38)為例,分別寫出執(zhí)行以下排序算法的各趟排序結(jié)束時(shí),關(guān)鍵字序列的狀態(tài)。(1) 直接插入排序 (2)希爾排序 (3)冒泡排序 (4)快速排序(5) 直接選擇排序 (6) 堆排序 (7) 歸并排序 上述方法中,哪些是穩(wěn)定的排序?哪些是非穩(wěn)定的排序?對(duì)不穩(wěn)定的排序試舉出一個(gè)不穩(wěn)定的實(shí)例。 n 答:(1)直接插入排序:(方括號(hào)表示無序區(qū))n 初始態(tài): 265 301 751 129 937 863 742 694 076 438n 第一趟:265 301 751 129 937 863 742 694 076 438n 第二趟:265 301 751 129 937 863 742 694 076
6、438n 第三趟:129 265 301 751 937 863 742 694 076 438n 第四趟:129 265 301 751 937 863 742 694 076 438n 第五趟:129 265 301 751 863 937 742 694 076 438n 第六趟:129 265 301 742 751 863 937 694 076 438n 第七趟:129 265 301 694 742 751 863 937 076 438n 第八趟:076 129 265 301 694 742 751 863 937 438n 第九趟:076 129 265 301 438 6
7、94 742 751 863 937 n -(2)希爾排序(增量為5,3,1)初始態(tài): 265 301 751 129 937 863 742 694 076 438第一趟:265 301 694 076 438 863 742 751 129 937 第二趟:076 301 129 265 438 694 742 751 863 937 第三趟:076 129 265 301 438 694 742 751 863 937 -3)冒泡排序(方括號(hào)為無序區(qū))初始態(tài) 265 301 751 129 937 863 742 694 076 438第一趟: 076 265 301 751 129 9
8、37 863 742 694 438第二趟: 076 129 265 301 751 438 937 863 742 694第三趟: 076 129 265 301 438 694 751 937 863 742第四趟: 076 129 265 301 438 694 742 751 937 863第五趟: 076 129 265 301 438 694 742 751 863 937第六趟: 076 129 265 301 438 694 742 751 863 937快速排序:(方括號(hào)表示無序區(qū),層表示對(duì)應(yīng)的遞歸樹的層數(shù))初始態(tài): 265 301 751 129 937 863 742 6
9、94 076 438第二層: 076 129 265 751 937 863 742 694 301 438第三層: 076 129 265 438 301 694 742 751 863 937第四層: 076 129 265 301 438 694 742 751 863 937第五層: 076 129 265 301 438 694 742 751 863 937第六層: 076 129 265 301 438 694 742 751 863 937-5)直接選擇排序:(方括號(hào)為無序區(qū))初始態(tài) 265 301 751 129 937 863 742 694 076 438第一趟: 076
10、 301 751 129 937 863 742 694 265 438第二趟: 076 129 751 301 937 863 742 694 265 438第三趟: 076 129 265 301 937 863 742 694 751 438第四趟: 076 129 265 301 937 863 742 694 751 438第五趟: 076 129 265 301 438 863 742 694 751 937第六趟: 076 129 265 301 438 694 742 751 863 937第七趟: 076 129 265 301 438 694 742 751 863 937
11、第八趟: 076 129 265 301 438 694 742 751 937 863第九趟: 076 129 265 301 438 694 742 751 863 937(6)堆排序:(通過畫二叉樹可以一步步得出排序結(jié)果)初始態(tài) 265 301 751 129 937 863 742 694 076 438建立初始堆:937 694 863 265 438 751 742 129 075 301第一次排序重建堆:863 694 751 765 438 301 742 129 075 937第二次排序重建堆:751 694 742 265 438 301 075 129 863 937第三
12、次排序重建堆:742 694 301 265 438 129 075 751 863 937第四次排序重建堆:694 438 301 265 075 129 742 751 863 937第五次排序重建堆:438 265 301 129 075 694 742 751 863 937第六次排序重建堆:301 265 075 129 438 694 742 751 863 937第七次排序重建堆:265 129 075 301 438 694 742 751 863 937第八次排序重建堆:129 075265 301 438 694 742 751 863 937第九次排序重建堆:075 12
13、9 265 301 438 694 742 751 863 937(7)歸并排序(為了表示方便,采用自底向上的歸并,方括號(hào)為有序區(qū))初始態(tài):265 301 751 129 937 863 742 694 076 438第一趟:265 301 129 751 863 937 694 742 076 438第二趟:129 265 301 751 694 742 863 937 076 438第三趟:129 265 301 694 742 751 863 937 076 438第四趟:076 129 265 301 438 694 742 751 863 937(8)基數(shù)排序(方括號(hào)內(nèi)表示一個(gè)箱子共
14、有10個(gè)箱子,箱號(hào)從0到9)初始態(tài) :265 301 751 129 937 863 742 694 076 438第一趟: 301 751 742 863 694 265 076 937 438 129第二趟:301 129 937 438 742 751 863 265 076 694第三趟:075 129 265 301 438 694 742 751 863 937 在上面的排序方法中,直接插入排序、冒泡排序、歸并排序和基數(shù)排序是穩(wěn)定的,其他排序算法均是不穩(wěn)定的,現(xiàn)舉實(shí)例如下:以帶*號(hào)的表示區(qū)別。希爾排序:8,1,10,5,6,*8快速排序:2,*2,1直接選擇排序:2,*2,1堆排序
15、:2,*2,16 判別下列序列是否為堆(小根堆或大根堆),若不是,則將其調(diào)整為堆:(1) (100,86,48,73,35,39,42,57,66,21);(2) (12,70,33,65,24,56,48,92,86,33);(3) (103,97,56,38,66,23,42,12,30,52,06,20);(4) (05,56,20,23,40,38,29,61,35,76,28,100).堆的性質(zhì)是:任一非葉結(jié)點(diǎn)上的關(guān)鍵字均不大于(或不小于)其孩子結(jié)點(diǎn)上的關(guān)鍵字。據(jù)此我們可以通過畫二叉樹來進(jìn)行判斷和調(diào)整:(1) 此序列是大根堆。(2) 此序列不是堆,經(jīng)調(diào)整后成為小根堆:(12,24,3
16、3,65,33,56,48,92,86,70)(3) 此序列是一大根堆。(4) 此序列不是堆,經(jīng)調(diào)整后成為小根堆:(05,23,20,35,28,38,29,61,56,76,40,100)8、設(shè)計(jì)一算法,使得在盡可能少的時(shí)間內(nèi)重排數(shù)組,將所有取負(fù)值的關(guān)鍵字放在所有取非負(fù)值的關(guān)鍵字之前。請(qǐng)分析算法的時(shí)間復(fù)雜度。 因?yàn)橹恍鑼⒇?fù)數(shù)關(guān)鍵字排在前面而無需進(jìn)行精確排列順序,因此本算法采用兩端掃描的方法,就象快速排序采用的方法一樣,左邊掃描到正數(shù)時(shí)停止,開始掃描右邊,遇到負(fù)數(shù)時(shí)與左邊的當(dāng)前記錄交換,如此交替進(jìn)行,一趟下來就可以完成排序。void ReSort(SeqList R)/重排數(shù)組,使負(fù)值關(guān)鍵字在前int i=1,j=n;/數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)三字扣市場(chǎng)調(diào)查研究報(bào)告
- 2025至2031年中國(guó)紫砂段泥花盆行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國(guó)多金屬?gòu)?fù)合鋁軋翅片管行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2030年高溫蝶閥項(xiàng)目投資價(jià)值分析報(bào)告
- 2025至2030年苯酰甲硝咪項(xiàng)目投資價(jià)值分析報(bào)告
- 車輛抵押借款合同
- 水上客運(yùn)服務(wù)合同模板
- 護(hù)林員聘用合同范本
- 餐飲顧問服務(wù)合同范本
- 寫字樓單元租賃合同
- 人工智能在商場(chǎng)應(yīng)用
- (完整word版)大格子作文紙模板(帶字?jǐn)?shù)統(tǒng)計(jì))
- 高考語文復(fù)習(xí):小說閱讀主觀題題型探究-解讀《理水》
- revit簡(jiǎn)單小別墅教程
- 第二章 第一節(jié) CT設(shè)備基本運(yùn)行條件
- 藍(lán)印花布鑒賞課件
- 血液灌流流程及注意事項(xiàng)詳細(xì)圖解
- 注水井洗井操作規(guī)程
- 貝克曼梁測(cè)定路基路面回彈彎沉
- 某道路拓寬工程施工組織設(shè)計(jì)
- 敏感紅血絲皮膚專題教學(xué)講解培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論