版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、摘要本文分析并演示最大子序列和問(wèn)題的幾種算法,它們都能解決問(wèn)題,但是時(shí)間復(fù)雜度卻大相徑庭,最后將逐步降低至線性。算法子序列和問(wèn)題的引入給定(可能有負(fù)數(shù))整數(shù)序列A1A2A3...An,求這個(gè)序列中子序列和的最大值。(為方便起見(jiàn),如果所有整數(shù)均為負(fù)數(shù),則最大子序列和為0)。例如:輸入整數(shù)序列:2118411650,則輸出答案為35,即從A2~A6。這個(gè)問(wèn)題之所以有吸引力,主要是因?yàn)榇嬖谇蠼馑暮芏嗨惴?,而這些算法的性能差異又很大。這些算法
2、,對(duì)于少量的輸入差別都不大,幾個(gè)算法都能在瞬間完成,這時(shí)若花費(fèi)大量的努力去設(shè)計(jì)聰明的算法恐怕就不太值得了;但是如果對(duì)于大量的輸入,想要更快的獲取處理結(jié)果,那么設(shè)計(jì)精良的算法顯得很有必要。切入正題下面先提供一個(gè)設(shè)計(jì)最不耗時(shí)間的算法,此算法很容易設(shè)計(jì),也很容易理解,但對(duì)于大量的輸入而言,效率太低:算法一:publicstaticintmaxSubsequenceSum(int[]a)intmaxSum=0f(inti=0ia.lengthi
3、)i為子序列的左邊界f(intj=ija.lengthj)j為子序列的右邊界intthisSum=0f(intk=0k=jk)迭代子序列中的每一個(gè)元素,求和maxSum=thisSumreturnmaxSum對(duì)于此算法,時(shí)間復(fù)雜度顯然是O(N2),對(duì)它的分析甚至比前面的分析還要簡(jiǎn)單,就是直接使用窮舉法把序列中i后面的每個(gè)值相加,如果發(fā)現(xiàn)有比maxSum大的,則更新maxSum的值。對(duì)于這個(gè)問(wèn)題,有一個(gè)遞歸和相對(duì)復(fù)雜的O(NlogN)解法
4、,我們現(xiàn)在就來(lái)描述它。要是真的沒(méi)有出現(xiàn)O(N)(線性的)解法,這個(gè)算法就會(huì)是體現(xiàn)遞歸為例的極好的范例了。該方法采用一種“分治”策略。其想法就是吧問(wèn)題分成兩個(gè)大致相等的子問(wèn)題,然后遞歸地對(duì)它們求解,這是“分”的階段?!爸巍彪A段就是將兩個(gè)子問(wèn)題的解修補(bǔ)到一起并可能再做些少量的附加工作,最后得到整個(gè)問(wèn)題的解。在我們的例子中,最大子序列的和只可能出現(xiàn)在3個(gè)地方:1.出現(xiàn)在輸入數(shù)據(jù)的左半部分2.3.出現(xiàn)在輸入數(shù)據(jù)的右半部分4.5.跨越輸入數(shù)據(jù)的中
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 算法探討——再議經(jīng)典算法問(wèn)題求最大子序列和、絕對(duì)值最大子序列和以及其區(qū)間
- 最大子矩陣的枚舉方法
- 基于枚舉樹(shù)的最大子空間聚類算法研究.pdf
- 淺談?dòng)脴O大化思想解決最大子矩形問(wèn)題
- 淺談?dòng)脴O大化思想解決最大子矩形問(wèn)題
- 淺談?dòng)脴O大化思想解決最大子矩形問(wèn)題
- 淺談?dòng)脴O大化思想解決最大子矩形問(wèn)題
- 淺談?dòng)脴O大化思想解決最大子矩形問(wèn)題
- 基于降低公平性容量最大子載波分配算法畢業(yè)論文
- 最大團(tuán)問(wèn)題的算法研究.pdf
- 盲最大似然序列估計(jì)算法的研究.pdf
- 最大團(tuán)問(wèn)題的精確算法研究.pdf
- 最大最小蟻群算法求解SDVRP和SDWVRP問(wèn)題的研究.pdf
- 最大團(tuán)問(wèn)題精確算法研究.pdf
- 零和自由序列的子序列和問(wèn)題.pdf
- 最大團(tuán)問(wèn)題的蟻群算法研究.pdf
- 基于最大權(quán)值路徑算法的DNA多序列比對(duì)方法.pdf
- 最大可滿足性問(wèn)題的博弈算法研究.pdf
- 最大獨(dú)立集問(wèn)題及其成長(zhǎng)算法的研究.pdf
- 最大團(tuán)問(wèn)題與鉆井布局問(wèn)題的求解算法研究.pdf
評(píng)論
0/150
提交評(píng)論