![c++版直接選擇排序法,直接插入排序法快速排序法堆排序法冒泡排序發(fā),試驗(yàn)_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/adab3aab-8972-4675-b3e8-89d345fc41ed/adab3aab-8972-4675-b3e8-89d345fc41ed1.gif)
![c++版直接選擇排序法,直接插入排序法快速排序法堆排序法冒泡排序發(fā),試驗(yàn)_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/adab3aab-8972-4675-b3e8-89d345fc41ed/adab3aab-8972-4675-b3e8-89d345fc41ed2.gif)
![c++版直接選擇排序法,直接插入排序法快速排序法堆排序法冒泡排序發(fā),試驗(yàn)_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/adab3aab-8972-4675-b3e8-89d345fc41ed/adab3aab-8972-4675-b3e8-89d345fc41ed3.gif)
![c++版直接選擇排序法,直接插入排序法快速排序法堆排序法冒泡排序發(fā),試驗(yàn)_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/25/adab3aab-8972-4675-b3e8-89d345fc41ed/adab3aab-8972-4675-b3e8-89d345fc41ed4.gif)
下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、#include <iostream> using namespace std;typedef int ElemType;/直接插入排序void InsertSort ( ElemType A,int n )int i, j;ElemType x;for ( i=1; i<n; i+ )/ 進(jìn)行 n-1 次插入x = Ai;/準(zhǔn)備插入第i個(gè)元素for (戸-1; j>=0; j- )/從第i-1個(gè)開始往前找插入點(diǎn)if ( xv Aj)Aj+1=Aj;elsebreak ;Aj+1=x;/ 插入/直接選擇排序void SelectSort(ElemType A, int
2、n)int i, j, k;ElemType x;for ( i=0; i<=n-2; i+ )/每一趟選擇最小元素并與 Ai交換k=i;for (j=i+1; j<=n-1; j+)/查找最小元素的下標(biāo)if (Aj<Ak) k=j;if (k!=i) / 交換x=Ai;Ai=Ak; Ak=x;/堆排序void Sift(ElemType A,int n, int i);void CreatHeap(ElemType A, int n)int i;for ( i = (n-2)/2; i >= 0; i-)voidSift(A, n, i);Sift(ElemType
3、A,int n, int i)/調(diào)整Ai.n-1使之為一個(gè)堆/調(diào)整Ai.n-1成為一個(gè)堆(它的左右子樹已是一個(gè)堆)ElemType x=Ai;int j = 2 * i + 1;while (j <= n-1) if ( j +1 < n && Aj< Aj+1)/ j為i的左孩子/ i有左子樹Ai=x; voidj+;if ( xv Aj) Ai=Aj; i=j; j=2*i+1;elsebreak ;HeapSort(ElemType A,/使j指向左右孩子中排序碼大的孩子/將Aj上移,以便向下篩int n)/A為待排序表,n為表的長(zhǎng)度int i;Elem
4、Type x; CreatHeap(A, n);/把A建成一個(gè)堆for (i=n_1;i>=1;i_)x = A0;A0 = Ai;/第個(gè)元素與第i個(gè)元素交換Ai = x;/Sift(A, i, 0);/調(diào)整A0.i-1使之為一個(gè)堆冒泡排序void BubbleSort( ElemType A,int n )int i, j, flag;/flag為交換標(biāo)記ElemType x;for (i=1; i<=n-1; i+) /最多n-1趟排序flag=0;for (j=n-1; j>=i; j-)/假設(shè)本次沒有交換/第i趟if ( Aj< Aj-1) flag=1;/出現(xiàn)
5、交換x=Aj Aj=Aj-1; Aj-1=x;if (flag=O) return ;/快速排序 void QuickSort(ElemType A, int s, int t)/遞歸算法,對(duì)區(qū)間AsAt進(jìn)行快速排序int i=s+1, j=t;/第一個(gè)為基準(zhǔn)元素/從左到右/從右到左i+; j-;/交換基準(zhǔn)元素/處理左區(qū)間/處理右區(qū)間ElemType temp, x = As;while ( i<=j )while ( i<=j && Ai<= x ) i+;while ( i<=j && Aj>=x) j-;if ( i <
6、 j ) temp=Ai; Ai=Aj; Aj=temp;if (s!=j)As=Aj;Aj=x;if (svj-1) QuickSort(A, s, j-1);if (j+1<t) QuickSort(A, j+1, t); void main()int i,j,n,N=5;coutvv "請(qǐng)輸入個(gè)整數(shù):";ElemType A5;for (j=O;j<N;j+)cin»Aj;coutvv "排序前為:"vvendl; for (i=0;ivN;i+) coutvvAivvendl;coutvv "直接插入排序:&quo
7、t;vvendl;InsertSort (A, N );for (i=0;ivN;i+) cout«Aivvendl;/運(yùn)行結(jié)果如右cout« "直接選擇排序:"vvendl;SelectSort(A, N);for (i=0;i<N;i+)coutvvAivvendl;coutvv "堆排序:"vvendl;HeapSort(A, N);for (i=0;ivN;i+)coutvvAivvendl;coutvv "冒泡排序:"vvendl;BubbleSort(A, N);for (i=0;ivN;i+)coutvvAiv
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人抵押貸款合同季度范本
- 臨街店鋪購(gòu)買合同范本
- 二次供水設(shè)備采購(gòu)合同
- 專業(yè)服裝管理軟件經(jīng)銷合同書
- 上海市股權(quán)轉(zhuǎn)讓合同標(biāo)準(zhǔn)范本
- 二手房銷售代理合同協(xié)議
- 中外合作種植戰(zhàn)略合作合同
- 云計(jì)算服務(wù)提供商數(shù)據(jù)保密合同
- 返聘人員協(xié)議書
- IT行業(yè)員工培訓(xùn)勞動(dòng)合同范本
- 《STP營(yíng)銷戰(zhàn)略概述》課件
- 醫(yī)院醫(yī)務(wù)人員醫(yī)德考評(píng)標(biāo)準(zhǔn)
- 小紅書種草營(yíng)銷師(初級(jí))認(rèn)證考試真題試題庫(kù)(含答案)
- 癲癇病人的護(hù)理(課件)
- 企業(yè)資產(chǎn)管理培訓(xùn)
- 2024年WPS計(jì)算機(jī)二級(jí)考試題庫(kù)350題(含答案)
- 2024年4月27日浙江省事業(yè)單位招聘《職業(yè)能力傾向測(cè)驗(yàn)》試題
- 2024年6月浙江省高考地理試卷真題(含答案逐題解析)
- 醫(yī)院培訓(xùn)課件:《如何撰寫護(hù)理科研標(biāo)書》
- 河南省鄭州市2023-2024學(xué)年高二上學(xué)期期末考試 數(shù)學(xué) 含答案
- 2024年山東省濟(jì)南市中考英語(yǔ)試題卷(含答案)
評(píng)論
0/150
提交評(píng)論