版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、*第三章蠻力法1. 選擇排序Selectio nSort(A0. n-1)for i=0 to n-2 domin=ifor j=i+1 to n-1 doif Aj<Ami nmi n=jswap Ai and Amin2. 冒泡排序BubbleSort(A0. n-1)/輸入:數(shù)組A,數(shù)組中的元素屬于某偏序集/輸出:按升序排列的數(shù)組Afor i=0 to n-2 dofor j=0 to n-2-i doif Aj+1<Aj swap Aj a nd Aj+13. 改進(jìn)的冒泡算法ALGORITHM BubbleSortlmproved( A0,r1)-/冒泡排序算法的改進(jìn)/輸入
2、:數(shù)組A,數(shù)組中的元素屬于某偏序集/輸出:按升序排列的數(shù)組Afor i j 0 to n -2 doflag j Truefor j j 0 to n -2 doif Aj+1 < Ajswap(Aj, Aj+1)flag j False/如果在某一輪的比較中沒(méi)有交換,則flag為True,算法結(jié)束if flag = Trueretur n4. 順序查找算法算法 SwquentialSearch2(A0.n, k)順序查找算法的實(shí)現(xiàn),它用了查找鍵來(lái)作限位器/輸入:一個(gè)n個(gè)元素的數(shù)組 A和一個(gè)查找鍵 K輸出:第一個(gè)值等于 K的元素的位置,如果找不到這樣的元素就返回-1Anv-ki<-
3、0while Ai!=K doiv-i+1if ivn return iElse return -15. 蠻力字符串匹配算法BruteForceStringMatch (T 0n-1,P0m-1)/該算法實(shí)現(xiàn)了蠻力字符串匹配/輸入:一個(gè)n個(gè)字符的數(shù)組T0.n-1 代表一段文本/ 一個(gè)m個(gè)字符的數(shù)組P0.m-1代表一個(gè)模式/輸出:如果查找成功的話,返回文本的第一個(gè)匹配字串中第一個(gè)字符的位置,/否則返回-1For i<-0 to n-m dojv-0While jvm and Pj=Ti 切dojv-i+1If j=m return ireturn -1合并排序最差O (nlog2n)快速排
4、序最優(yōu)O (nlog2n)最差O (n2)平均 O (1.38nlog2n)選擇排序 O (n2)冒泡排序 O (n2)插入排序最差O (n2)最優(yōu)O (n)平均O (n2)*第四章分治法合并排序算法 MergeSort(A0.n-1)/遞歸調(diào)用 mergesort來(lái)對(duì)數(shù)組 A0.n-1排序/輸入:一個(gè)可排序數(shù)組A0.n-1/輸出:非降序排列的數(shù)組A0.n-1if n > 1copy A0. |ln/2 -1 to B0. |ln/2 -1 copy A |ln/2 .n-1 to C0. |ln/2 -1 MergeSort( B )MergeSort( C )Merge( B,C,A
5、 )兩個(gè)數(shù)組合并的算法算法 Merge (B0.p-1,C0.q-1,A0.p+q-1)/將兩個(gè)有序數(shù)組合并成一個(gè)有序的數(shù)組/輸入:兩個(gè)有序數(shù)組B0.p-1和C0.q-1輸出:A0.p+q-1中已經(jīng)有序存放了B和C中的元素i=O,j=O,k=O;while i<p and j<q doif Bi w CjAk=Bi, i=i+1elseAk=Cj, j=j+1k=k+1if i=pcopy Cj.q-1 to Ak.p+q-1elsecopy Bi.p-1 to A0.p+q-1快速排序算法QuickSort(Al.r)/使用快速排序法對(duì)序列或者子序列排序/輸入:子序列 Al.r或
6、者序列本身 A0.n-1/輸出:非遞減序列 Aif l < rs J Partition( Al.r)QuickSort( Al.s-1)QuickSort( As+1.r)/s是中軸元素/基準(zhǔn)點(diǎn),是數(shù)組分區(qū)位置的標(biāo)志實(shí)現(xiàn)分區(qū)的算法貳法 Partition( Al.r)/輸入:子數(shù)組 Al.r/輸出:分裂點(diǎn)/基準(zhǔn)點(diǎn)pivot的位置p j Al i j l; j j r+1repeatrepeat i J i + 1 until Ai > prepeat j J j - 1until Aj < pswap( Ai, Aj)until i > jswap( Ai, Aj)s
7、wap( Al, Aj)return j折半查找Bin arySearch( A0. n-1, k )/輸入:已排序大小為n的序列A,待搜索對(duì)象k/輸出:如果搜索成功,則返回k的位置,否則返回-1l=0,r= n-1;While l w rmid= kl+r)/2if k = Amid return midelse if k < Amid r=m-1else l=m+1return -1*Strassen 矩陣Strasse n 方法M仁 A11(B12-B22)M2=(A11+A12)B22M3=(A21+A22)B11M4=A22(B21-B11)M5=(A11+A22)(B11+B
8、22)M6=(A12-A22)(B21+B22)M7=(A11-A21)(B11+B12)第五章減治法插入排序ALGORITHM In sertio nSort( A0. n-1)/對(duì)給定序列進(jìn)行直接插入排序/輸入:大小為n的無(wú)序序列A/輸出:按非遞減排列的序列Afor i j 1 to n-1 dotemp j Aij j i-1while j > 0 and Aj > temp doAj+1 j Ajj j j -Aj+1 j temp深度優(yōu)先查找算法BFS (G)實(shí)現(xiàn)給定圖的深度優(yōu)先查找遍歷輸入:圖G=<V,E>V中的輸出:圖G的頂點(diǎn),按照被 DFS遍歷第一次訪問(wèn)
9、到的先后次序,用連續(xù)的整數(shù)標(biāo)記,將 每個(gè)頂點(diǎn)標(biāo)記為0,表示還“未訪問(wèn)”count =0記錄這是第幾個(gè)訪問(wèn)的節(jié)點(diǎn)mark each vertex with 0/ 標(biāo)記為 unvisitedfor each vertex v V doif v is marked with 0dfs(v)dfs(v)/遞歸訪問(wèn)所有和v相連接的未訪問(wèn)頂點(diǎn),然后按照全局變量count的值/根據(jù)遇到它們的先后順序,給它們附上相應(yīng)的數(shù)字count = count + 1mark v with countfor each vertex w adjace nt to v doif w is marked with 0dfs(w
10、)廣度優(yōu)先BFS(G)/實(shí)現(xiàn)給定圖的深度優(yōu)先查找遍歷輸入:圖G=<V,E>V中的輸出:圖G的頂點(diǎn),按照被 BFS遍歷第一次訪問(wèn)到的先后次序,用連續(xù)的整數(shù)標(biāo)記,將 每個(gè)頂點(diǎn)標(biāo)記為0,表示還“未訪問(wèn)”count =0mark each vertex with 0for each vertex v V dobfs(v)bfs(v)/遞歸訪問(wèn)所有和v相連接的未訪問(wèn)頂點(diǎn),然后按照全局變量count的值/根據(jù)遇到它們的先后順序,給它們附上相應(yīng)的數(shù)字count = count + 1mark v with countin itialize queue with vwhile queue is n
11、ot empty doa = front of queuefor each vertex w adjace nt to a doif w is marked with 0count = count + 1mark w with countadd w to the end of the queueremove a from the front of the queue拓?fù)渑判虻诹伦冎畏℅auss消去法GaussElimi natio n(A1. .n, b1. n)/輸入:系數(shù)矩陣A及常數(shù)項(xiàng)b/輸出:方程組的增廣矩陣等價(jià)的上三角矩陣for i=1 to n doAi n+1 =bifor j=
12、 i+1 to n dofor k = i to n+1 doAjk = Ajk-Aik*Aji/Aii堆排序堆排序主要包括兩個(gè)步驟:對(duì)于給定的數(shù)組構(gòu)造相應(yīng)的堆。對(duì)所構(gòu)造的堆執(zhí)行n-1次刪除堆的根結(jié)點(diǎn)的操作,把刪除得到的結(jié)點(diǎn)保存在給定數(shù)組中。1構(gòu)造堆的效率是多少?0(n)2推排序的效率0( nlog n)Horner法則第七章時(shí)空權(quán)衡計(jì)數(shù)排序比較計(jì)數(shù)算法算法 ComparisonCountingSort(A0.n-1)/用比較計(jì)數(shù)法對(duì)數(shù)組排序輸入:可排序數(shù)組 A0. n-1/輸出:將A中的元素按照升序排列的數(shù)組S0.n-1For i=0 to n-1 do cou nti=0For i=0 to n-2 doFor j=i+1 to n-1 doifAi<AjCou ntj=Cou ntj+1Else Cou nti=Cou nti+1For i=0 to n-1 do SCou nti=AiRetur n SC( n)=n(n-1)/2第八章動(dòng)態(tài)規(guī)劃WARSHALL 算法void WARSHALL ( m)for (i=1; i< = n; i+ )for (j = 1; j< = n; j+ )if(m j , i = T)for (k=1; i< = n; i+ )m j, k + = m i , k;(4)該算法由鄰
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 星際探測(cè)器自主控制算法-洞察分析
- 田七膠囊安全性研究-洞察分析
- 水力發(fā)電能耗分析-洞察分析
- 文化企業(yè)并購(gòu)優(yōu)化-洞察分析
- 栓子降解微生物群落穩(wěn)定性分析-洞察分析
- 文學(xué)傳統(tǒng)與現(xiàn)代-洞察分析
- 學(xué)生考試成績(jī)分析總結(jié)范文(31篇)
- 先進(jìn)教育技術(shù)下的教學(xué)創(chuàng)新策略報(bào)告
- 辦公自動(dòng)化與農(nóng)業(yè)銀行合規(guī)律條的同步發(fā)展
- 全球視野下的語(yǔ)文跨文化教育模式研究
- 預(yù)應(yīng)力混凝土管樁基礎(chǔ)技術(shù)規(guī)程
- 老舊小區(qū)提升改造EPC項(xiàng)目施工組織設(shè)計(jì)
- 中小學(xué)傳統(tǒng)文化教育指導(dǎo)標(biāo)準(zhǔn)
- 湖北省市場(chǎng)主體發(fā)展分析報(bào)告
- 2023-2023學(xué)年北京市西城區(qū)初一第一學(xué)期期末數(shù)學(xué)試卷(含答案)
- 模具移轉(zhuǎn)作業(yè)流程
- 氣管導(dǎo)管氣囊壓力的測(cè)定課件
- 幼兒園繪本:《小蛇散步》 課件
- 西南大學(xué)馬原復(fù)習(xí)考試修訂版
- 全國(guó)各地區(qū)地磁場(chǎng)強(qiáng)度表
- 國(guó)家開放大學(xué)《人文英語(yǔ)3》章節(jié)測(cè)試參考答案
評(píng)論
0/150
提交評(píng)論