![數(shù)據(jù)結(jié)構(gòu)(c語(yǔ)言版)題集答案-第十章內(nèi)部排序_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/30/6af70c4d-3f35-41d7-9155-fa09818d8822/6af70c4d-3f35-41d7-9155-fa09818d88221.gif)
![數(shù)據(jù)結(jié)構(gòu)(c語(yǔ)言版)題集答案-第十章內(nèi)部排序_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/30/6af70c4d-3f35-41d7-9155-fa09818d8822/6af70c4d-3f35-41d7-9155-fa09818d88222.gif)
![數(shù)據(jù)結(jié)構(gòu)(c語(yǔ)言版)題集答案-第十章內(nèi)部排序_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/30/6af70c4d-3f35-41d7-9155-fa09818d8822/6af70c4d-3f35-41d7-9155-fa09818d88223.gif)
![數(shù)據(jù)結(jié)構(gòu)(c語(yǔ)言版)題集答案-第十章內(nèi)部排序_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/30/6af70c4d-3f35-41d7-9155-fa09818d8822/6af70c4d-3f35-41d7-9155-fa09818d88224.gif)
![數(shù)據(jù)結(jié)構(gòu)(c語(yǔ)言版)題集答案-第十章內(nèi)部排序_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/30/6af70c4d-3f35-41d7-9155-fa09818d8822/6af70c4d-3f35-41d7-9155-fa09818d88225.gif)
下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)據(jù)結(jié)構(gòu)(c語(yǔ)言版)題集答案-第十章-內(nèi)部排序第十章內(nèi)部排序10.23void Insert_Sortl (SqList &L)監(jiān)視哨設(shè)在高下標(biāo)端的插入排序算法k=L. length;for(i=k-l;i;i) 從后向前逐個(gè)插入排序 if(L.ri.key>L.ri+l.key) L.rk+l.key=L.rEi.key; 監(jiān)視哨 for(j=i+l;L. rj. key>L. ri. key; +j) L. rj-1. key=L. rj. key; 前移 L. rj-1. key=L. rk+1. key; 插入/Insert_Sort1 10. 24void BiI
2、nsert_Sort (SqList &L) 二路插入排序的算法int dMAXSIZE ; /輔助存儲(chǔ) x=L. r . key; d =x; first=l ;final=l;for(i=2;i<=L. length;i+) if (L. r i. key>=x) 插入前部for (j=final; dj >L. r i. key; j) dj+l=dj;dj+l=L. ri.key; final+; else 插入后部for(j=first;djdj-l=dj;d(j-2)%MAXSIZE+l=L. ri. key;first=(first-2)%MAXSIZE
3、+l; 這種形式的表達(dá)式是為了兼顧first=l的情 況 /forfor(i二first, j=l;di;i=i%MAXSIZE+l, j+)將序列復(fù)制回去L. rj. key=dEi; /BiInsert_Sort 10. 25void SLInsert_Sort (SLList &L) 靜態(tài)鏈表的插入排序算法L. r0. key=0;L. r L0. next=l;L. rl. next=0; /建初始循環(huán)鏈表 for (i=2; i<=L. length; i+) 逐個(gè)插入p=0;x=L. ri. key;while(L. rEL. rLp. next. keyp=L. r
4、Lpj. next; q=L. rip, next; L. rLp. next=i;L.ril.next=q; /forp=L. r0. next; for(i=l;iwhile(pq=L. rEp. next; if(p!=i) L. rpjL. rEi ; L. rLi. next=p; p=q; /for/SLInsert_Sort 10. 26void Bubble_Sortl(int a ,int n)對(duì)包含n個(gè)元素的數(shù)組a進(jìn)行改進(jìn)的冒泡排 序changefl; "change指示上一趟冒泡中最后發(fā)生交換的元素while (change) for (c=0, i=0; ii
5、f (ai>ai+l) c=i+1; /c指示這一趟冒泡中發(fā)生交換的元素change二c; /while/Bubble_Sortl 10. 27void Bubble_Sort2(int a int n)相鄰兩趟是反方向起泡的冒泡排序算法(low=0;high=n-l; /冒泡的上下界 change=l; while(low change=0;for (i=low; iif (ai>ai+l) change;high一; 修改上界for (i=high;i>low; i-) /從下向上起泡 if (ai change;low+; 修改下界/while)/Bubble.Sort
6、2 10. 28void Bubble_Sort3(int a ,int n)對(duì)上一題的算法進(jìn)行化簡(jiǎn),循環(huán)體中只包含一 次冒泡int b 3 ; b0為冒泡的下界,b 2 為上界,b無(wú)用d=l;bO=O;b 2 =n-l; d為冒泡方向的標(biāo)識(shí),1為向上1為向下changed; while(b0 change:。;for(i=bl-d ;i!=bl+d ;i+=d) /統(tǒng)一的冒泡算法 if (ai-ai+d)*d>0) /注意 這個(gè)交換條件aiai+d; change=l; bl+d-二d; 修改邊界 d*=-l; /換個(gè)方向/while/Bubble_Sort3 10.29void 0E
7、_Sort (int aE , int n) 奇偶交換排序的算法(change=l;while (change) change=0;for(i=l;iif(aLi>aLi+lJ) change=l; for(i=0;iif(ai>aCi+l) aiai+l;change=l; /while /0E_Sort分析:本算法的結(jié)束條件是連續(xù)兩趟比較無(wú)交換發(fā)生10. 30typedef struct int low; int high; boundary; 子序列的上下界類(lèi)型void QSort_NotRecurve (int SQList &L)快速排序的非遞歸算法low=l;h
8、igh二L. length;InitStack(S) ; S 的元素為 boundary 類(lèi)型 while (lowif(high-low>2) 如果當(dāng)前子序列長(zhǎng)度大于3旦尚未排好序pivot=Partition(L, low, high); 進(jìn)行一趟劃分 if (high-pivot>pivot-low) Push(S, pivot+l, high); 把長(zhǎng)的子序列邊界入棧high=pivotT; 短的子序列 留待下次排序)else Push(S, low, pivotal); low=pivot+l; /ifelse if(low(Easy_Sort (L, low, high
9、); 直接進(jìn)行比較排序low二high; 當(dāng)前子序列標(biāo)志為己排 好序1else 如果當(dāng)前子序列已排好序但棧中還有未排序的子序列Pop(S, a); 從棧中取出一個(gè)子序列 low=a. low; high=a. high; /while/QSort_NotRecurveint Partition(SQList &L, int low, int high)一趟劃分的算法,與書(shū)上相同L. r 01=L. r low;pivotkey=L. rElow, key; while(lowwhiledow=pivotkey) high-;L. rlow=L. rhigh; while(lowlow+
10、; L. rEhigh=L. rLlowJ; /whileL. rlow=L. rEO; return low; /Partitionvoid Easy_Sort (SQList &L, int low, int high)對(duì)長(zhǎng)度小'3 的子序列進(jìn)行比較排 序if (high-low=l) 子序列只含兩個(gè)元素if (L. rlow. key>L. rhigh, key) L. rlowL. rhigh ; else 子序列含有三個(gè)元 素if (L. rlow. key>L. rlow+11. key) L. r lowL. rlow+1;if (L. r llow+1. key>L. rhigh. key) L. r E1ow+1L. rhigh;if (L. rlow. key>L. r low+1. key) L. rlowL. rlow+l ; void Divide(int a , int n)把數(shù)組a中所有值為負(fù)的記錄調(diào)到非負(fù)的記錄之前l(fā)ow=0;high=n-l; while(lowwhile (low=0) high; 以 0 作為虛擬的樞軸記錄 a low a high;while (Iowa low a high ; /Divide 10. 32type
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)啞光絲綢乳膠漆行業(yè)市場(chǎng)發(fā)展前景及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 2025年中國(guó)醫(yī)用工具箱行業(yè)市場(chǎng)運(yùn)行現(xiàn)狀及投資戰(zhàn)略研究報(bào)告
- 白水泥行業(yè)的創(chuàng)新產(chǎn)品設(shè)計(jì)策略
- 申請(qǐng)書(shū)屬于什么
- 救助隊(duì)申請(qǐng)書(shū)
- 南京市溧水區(qū)2022年七年級(jí)《語(yǔ)文》下冊(cè)期末試卷與參考答案
- 新版人教PEP版三年級(jí)下冊(cè)英語(yǔ)課件 Unit 3 Part C 第2課時(shí)
- 部編版:2022年七年級(jí)《道德B卷》下冊(cè)期中試卷與參考答案
- 電信業(yè)務(wù)的未來(lái)發(fā)展趨勢(shì)預(yù)測(cè)
- 加入心理部申請(qǐng)書(shū)
- 2023-2024學(xué)年貴州省黔西南州八年級(jí)上冊(cè)1月月考語(yǔ)文質(zhì)量檢測(cè)試卷(附答案)
- 閱讀理解:如何找文章線索 課件
- 產(chǎn)品設(shè)計(jì)思維 課件 第3-5章 產(chǎn)品設(shè)計(jì)的問(wèn)題思維、產(chǎn)品設(shè)計(jì)的功能思維、產(chǎn)品設(shè)計(jì)的形式思維
- 餐券模板完整
- 2023年節(jié)能服務(wù)行業(yè)市場(chǎng)分析報(bào)告及未來(lái)發(fā)展趨勢(shì)
- 小區(qū)排水管網(wǎng)修復(fù)施工方案
- 智慧城市發(fā)展-人工智能技術(shù)在城市管理中的應(yīng)用
- 因產(chǎn)品質(zhì)量買(mǎi)賣(mài)合同糾紛起訴狀
- GB/T 6892-2023一般工業(yè)用鋁及鋁合金擠壓型材
- 評(píng)估胎兒健康的技術(shù)
- 實(shí)驗(yàn)室危險(xiǎn)廢物處理廢液分類(lèi)與收集
評(píng)論
0/150
提交評(píng)論