




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)結(jié)構(gòu)-算法與算法分析我哥哥要上高中了,雖然我有一點(diǎn)點(diǎn)舍不得,但是更多的是開心和激動(dòng)。因?yàn)樵僖矝]有人跟我搶電腦了。以前他經(jīng)常不讓我玩電腦,自己霸占電腦。到了哥哥要走的那一天,我看到他在整理行李,他對(duì)我說:“趙奕翔,你在家里要聽話,不要惹麻煩。”我聽了說:“放心吧!”之后我趕緊打開家門送哥哥走出去,希作文望他不再回來。爸爸媽媽與我一道送他下樓,他走的時(shí)候,臉上一副悶悶不樂的樣子。我裝成一副很傷心又很舍不得的樣子,可其實(shí)心里已經(jīng)樂開了花,回家后,我自己一個(gè)人關(guān)在房間大喊道:“yes,終于自由了。”我一看窗戶,發(fā)現(xiàn)哥哥一直在和我招手,我也向他招手。最后,我就安心地玩起了哥哥的電腦。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析數(shù)據(jù)結(jié)構(gòu)-算法與算法分析我哥哥要上高中了,雖然我有一點(diǎn)點(diǎn)舍不得,但是更多的是開心和激動(dòng)。因?yàn)樵僖矝]有人跟我搶電腦了。以前他經(jīng)常不讓我玩電腦,自己霸占電腦。到了哥哥要走的那一天,我看到他在整理行李,他對(duì)我說:“趙奕翔,你在家里要聽話,不要惹麻煩。”我聽了說:“放心吧!”之后我趕緊打開家門送哥哥走出去,希作文望他不再回來。爸爸媽媽與我一道送他下樓,他走的時(shí)候,臉上一副悶悶不樂的樣子。我裝成一副很傷心又很舍不得的樣子,可其實(shí)心里已經(jīng)樂開了花,回家后,我自己一個(gè)人關(guān)在房間大喊道:“yes,終于自由了。”我一看窗戶,發(fā)現(xiàn)哥哥一直在和我招手,我也向他招手。最后,我就安心地玩起了哥哥的電腦。一、算法二、算法設(shè)計(jì)的要求三、算法效率的度量四、算法的存儲(chǔ)空間需求1.4算法和算法分析數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第1頁。一、算法二、算法設(shè)計(jì)的要求三、算法效率的度量四、算法的存儲(chǔ)空間需求1.4算法和算法分析數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第2頁。1.有窮性
2.確定性3.可行性4.有輸入5.有輸出一、算法
算法(algorithm):是對(duì)特定問題求解步驟的一種描述,它是指令的有限序列,其中每一條指令表示一個(gè)或多個(gè)操作。
一個(gè)算法還具有以下5個(gè)重要特性:
數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第3頁。1.有窮性對(duì)于任意一組合法輸入值,在執(zhí)行有窮步驟之后一定能結(jié)束,即:算法中的每個(gè)步驟都能在有限時(shí)間內(nèi)完成;
2.確定性
對(duì)于每種情況下所應(yīng)執(zhí)行的操作,在算法中都有確切的規(guī)定,使算法的執(zhí)行者或閱讀者都能明確其含義及如何執(zhí)行。并且在任何條件下,算法都只有一條執(zhí)行路徑;數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第4頁。3.可行性算法中的所有操作都必須足夠基本,都可以通過已經(jīng)實(shí)現(xiàn)的基本操作運(yùn)算有限次實(shí)現(xiàn)之;4.有輸入作為算法加工對(duì)象的量值,通常體現(xiàn)為算法中的一組變量。有些輸入量需要在算法執(zhí)行過程中輸入,而有的算法表面上可以沒有輸入,實(shí)際上已被嵌入算法之中;數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第5頁。
5.有輸出它是一組與“輸入”與確定關(guān)系的量值,是算法進(jìn)行信息加工后得到的結(jié)果,這種確定關(guān)系即為算法的功能。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第6頁。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第7頁。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第8頁。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第9頁。2.可讀性
算法主要是為了人的閱讀與交流,其次才是為計(jì)算機(jī)執(zhí)行。因此算法應(yīng)該易于人的理解;另一方面,晦澀難讀的程序易于隱藏較多錯(cuò)誤而難以調(diào)試;數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第10頁。3.健壯性
當(dāng)輸入的數(shù)據(jù)非法時(shí),算法應(yīng)當(dāng)恰當(dāng)?shù)刈鞒龇从郴蜻M(jìn)行相應(yīng)處理,而不是產(chǎn)生莫名奇妙的輸出結(jié)果。并且,處理出錯(cuò)的方法不應(yīng)是中斷程序的執(zhí)行,而應(yīng)是返回一個(gè)表示錯(cuò)誤或錯(cuò)誤性質(zhì)的值,以便在更高的抽象層次上進(jìn)行處理。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第11頁。4.高效率與低存儲(chǔ)量需求
通常,效率指的是算法執(zhí)行時(shí)間;存儲(chǔ)量指的是算法執(zhí)行過程中所需的最大存儲(chǔ)空間。兩者都與問題的規(guī)模有關(guān)。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第12頁。三、算法效率的度量通常有兩種衡量算法效率的方法:
事后統(tǒng)計(jì)法事前分析估算法缺點(diǎn):1。必須執(zhí)行程序
2。其它因素掩蓋算法本質(zhì)數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第13頁。和算法執(zhí)行時(shí)間相關(guān)的因素:1.算法選用的策略2.問題的規(guī)模3.編寫程序的語言4.編譯程序產(chǎn)生的機(jī)器代碼的質(zhì)量5.計(jì)算機(jī)執(zhí)行指令的速度數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第14頁。
一個(gè)特定算法的“運(yùn)行工作量”的大小,只依賴于問題的規(guī)模(通常用整數(shù)量n表示),或者說,它是問題規(guī)模的函數(shù)。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第15頁。
一個(gè)算法是由控制結(jié)構(gòu)(順序、分支和循環(huán)三種)和原操作(指固有數(shù)據(jù)類型的操作)構(gòu)成的,則算法時(shí)間取決于兩者的綜合效果。為了便于比較同一問題的不同算法,通常的做法是,從算法中選取一種對(duì)于所研究的問題(或算法類型)來說是基本操作的原操作,以該基本操作重復(fù)執(zhí)行的次數(shù)作為算法的時(shí)間量度。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第16頁。
假如,隨著問題規(guī)模n的增長,算法執(zhí)行時(shí)間的增長率和f(n)的增長率相同,則可記作:T(n)=O(f(n))稱T(n)為算法的(漸近)時(shí)間復(fù)雜度數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第17頁。如何估算算法的時(shí)間復(fù)雜度?數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第18頁。算法=控制結(jié)構(gòu)+原操作(固有數(shù)據(jù)類型的操作)算法的執(zhí)行時(shí)間
=原操作(i)的執(zhí)行次數(shù)×原操作(i)的執(zhí)行時(shí)間
算法的執(zhí)行時(shí)間
與
原操作執(zhí)行次數(shù)之和
成正比
數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第19頁。
從算法中選取一種對(duì)于所研究的問題來說是基本操作
的原操作,以該基本操作在算法中重復(fù)執(zhí)行的次數(shù)作為算法運(yùn)行時(shí)間的衡量準(zhǔn)則。語句頻度是指的是該語句重復(fù)執(zhí)行的次數(shù)。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第20頁。例一兩個(gè)矩陣相乘voidmult(inta[],intb[],int&c[]){
//以二維數(shù)組存儲(chǔ)矩陣元素,c為a和b的乘積
for(i=1;i<=n;++i)
for(j=1;j<=n;++j){c[i,j]=0;
for(k=1;k<=n;++k)c[i,j]+=a[i,k]*b[k,j];
}//for}//mult基本操作:
乘法操作時(shí)間復(fù)雜度:
O(n3)數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第21頁。
由于算法的時(shí)間復(fù)雜度考慮的只是對(duì)于問題規(guī)模n的增長率,在難以精確計(jì)算基本操作執(zhí)行次數(shù)(語句頻度)的情況下,只需要求出它關(guān)于n的增長率或階即可。通常算法中基本操作重復(fù)執(zhí)行的次數(shù)隨問題的輸入數(shù)據(jù)集不同而不同,對(duì)這類算法的分析,其一是計(jì)算算法的平均時(shí)間復(fù)雜度,其二是計(jì)算最壞情況下的時(shí)間復(fù)雜度。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第22頁。
常用的時(shí)間復(fù)雜度有如下的關(guān)系:O(1)<=O(log2n)<=O(n)<=O(nlog2n)<=O(n2)<=O(2n)數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第23頁。四、算法的存儲(chǔ)空間需求算法的空間復(fù)雜度定義為:
表示隨著問題規(guī)模n的增大,算法運(yùn)行所需存儲(chǔ)量的增長率與g(n)的增長率相同。S(n)=O(g(n))數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第24頁。算法的存儲(chǔ)量包括:1.輸入數(shù)據(jù)所占空間2.程序本身所占空間;3.輔助變量所占空間。數(shù)據(jù)結(jié)構(gòu)-算法與算法分析全文共28頁,當(dāng)前為第25頁。
若輸入數(shù)據(jù)所占空間只取決與問題本身,和算法無關(guān),則只需要分析除輸入和程序之外的輔助變量所占額外空間。
若所需額外空間相對(duì)于輸入數(shù)據(jù)量來說是常數(shù),則稱此算法為原地工作。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中醫(yī)法法律法規(guī)培訓(xùn)
- 原料驗(yàn)收培訓(xùn)課件
- 職業(yè)生涯人物訪談
- 2025電氣基礎(chǔ)培訓(xùn)
- 育齡婦女生殖健康知識(shí)
- 防物體打擊培訓(xùn)
- 2026年高考政治一輪復(fù)習(xí):統(tǒng)編版必修4《哲學(xué)與文化》知識(shí)點(diǎn)考點(diǎn)提綱
- 笑氣在神經(jīng)內(nèi)科領(lǐng)域的應(yīng)用與研究進(jìn)展
- 2025年智能家居軟裝搭配市場(chǎng)趨勢(shì)與商業(yè)布局報(bào)告
- 2025年城市污水處理廠智能化升級(jí)改造與智能監(jiān)測(cè)預(yù)警平臺(tái)應(yīng)用案例深度分析報(bào)告
- 2025至2030中國天然水晶手鐲行業(yè)商業(yè)模式及發(fā)展前景與投資報(bào)告
- 關(guān)于教育減負(fù)的議論文
- 2025至2030年中國側(cè)背光源行業(yè)投資前景及策略咨詢報(bào)告
- 2025至2030年中國叉車油缸行業(yè)市場(chǎng)發(fā)展調(diào)研及投資前景展望報(bào)告
- 汽車美容質(zhì)量管理制度
- 躁動(dòng)患者約束帶的使用及護(hù)理
- 云南省大理2025年八年級(jí)下學(xué)期語文期末模擬考試卷三套及答案
- 國家開放大學(xué)國開電大《統(tǒng)計(jì)與數(shù)據(jù)分析基礎(chǔ)》形考任務(wù)1-4 參考答案
- 風(fēng)電居間合同協(xié)議書
- 浙江開放大學(xué)2025年《社會(huì)保障學(xué)》形考任務(wù)4答案
- 教育數(shù)字化轉(zhuǎn)型背景下的小學(xué)英語教學(xué)研究
評(píng)論
0/150
提交評(píng)論