幾種排序方法的思想與比較

幾種排序方法的思想與比較

ID:38779866

大小:16.63 KB

頁數(shù):6頁

時間:2019-06-19

幾種排序方法的思想與比較_第1頁
幾種排序方法的思想與比較_第2頁
幾種排序方法的思想與比較_第3頁
幾種排序方法的思想與比較_第4頁
幾種排序方法的思想與比較_第5頁
資源描述:

《幾種排序方法的思想與比較》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、一、插入排序(InsertionSort)1.基本思想:??每次將一個待排序的數(shù)據(jù)元素,插入到前面已經(jīng)排好序的數(shù)列中的適當位置,使數(shù)列依然有序;直到待排序數(shù)據(jù)元素全部插入完為止。2.排序過程: 【示例】:[初始關(guān)鍵字][49]38659776132749??J=2(38)[3849]659776132749??J=3(65)[384965]9776132749??J=4(97)[38496597]76132749??J=5(76)[3849657697]132749??J=6(13)[133849657697]2749??J=7(27)[13273849657697

2、]49??J=8(49)[1327384949657697]ProcedureInsertSort(VarR:FileType);//對R[1..N]按遞增序進行插入排序,R[0]是監(jiān)視哨//??Begin??forI:=2ToNDo//依次插入R[2],...,R[n]//??begin????R[0]:=R[I];J:=I-1;????WhileR[0]

3、R[I]//??end??End;//InsertSort//二、選擇排序1.基本思想:  每一趟從待排序的數(shù)據(jù)元素中選出最小(或最大)的一個元素,順序放在已排好序的數(shù)列的最后,直到全部待排序的數(shù)據(jù)元素排完。2.排序過程:【示例】:??初始關(guān)鍵字[4938659776132749]第一趟排序后13[38659776492749]第二趟排序后1327[659776493849]第三趟排序后132738[9776496549]第四趟排序后13273849[49976576]第五趟排序后1327384949[979776]第六趟排序后132738494976[7697]第

4、七趟排序后13273849497676[97]最后排序結(jié)果1327384949767697ProcedureSelectSort(VarR:FileType);//對R[1..N]進行直接選擇排序//??Begin??forI:=1ToN-1Do//做N-1趟選擇排序//????begin????K:=I;????ForJ:=I+1ToNDo//在當前無序區(qū)R[I..N]中選最小的元素R[K]//????begin??????IfR[J];IThen//交換R[I]和R[K]//??????beginTem

5、p:=R[I];R[I]:=R[K];R[K]:=Temp;end;????end??End;//SelectSort//三、冒泡排序(BubbleSort)1.基本思想:  兩兩比較待排序數(shù)據(jù)元素的大小,發(fā)現(xiàn)兩個數(shù)據(jù)元素的次序相反時即進行交換,直到?jīng)]有反序的數(shù)據(jù)元素為止。2.排序過程:  設想被排序的數(shù)組R[1..N]垂直豎立,將每個數(shù)據(jù)元素看作有重量的氣泡,根據(jù)輕氣泡不能在重氣泡之下的原則,從下往上掃描數(shù)組R,凡掃描到違反本原則的輕氣泡,就使其向上"漂浮",如此反復進行,直至最后任何兩個氣泡都是輕者在上,重者在下為止。【示例】:49131313131313133

6、849272727272727653849383838383897653849494949497697654949494949137697656565656527277697767676764949497697979797ProcedureBubbleSort(VarR:FileType)//從下往上掃描的起泡排序//Begin??ForI:=1ToN-1Do//做N-1趟排序//??begin????NoSwap:=True;//置未排序的標志//????ForJ:=N-1DownTo1Do//從底部往上掃描//????begin????IfR[J+1]

7、Then//交換元素//??????begin??????Temp:=R[J+1];R[J+1:=R[J];R[J]:=Temp;??????NoSwap:=False??????end;????end;????IfNoSwapThenReturn//本趟排序中未發(fā)生交換,則終止算法//??endEnd;//BubbleSort//四、快速排序(QuickSort)1.基本思想:  在當前無序區(qū)R[1..H]中任取一個數(shù)據(jù)元素作為比較的"基準"(不妨記為X),用此基準將當前無序區(qū)劃分為左右兩個較小的無序區(qū):R[1..I-1]和R[I+1..H],且左邊的無序子區(qū)

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。