版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
全國軟件設(shè)計(jì)大賽培訓(xùn)
第二講:遞推與遞歸內(nèi)容提要遞推法遞歸法遞推法遞推法是指由遞推公式逐步推演得出問題解的方法。遞推法是一種簡單的思想。遞推法適合求解可以用遞推公式描述出來的問題,一般來講,遞推法求解問題是線性的負(fù)責(zé)性的。遞推法求解斐波那契數(shù)列:f(0)=1,f(1)=1f(n+2)=f(n+1)+f(n)(n>=0)程序代碼
f[0]=1;f[1]=1;for(inti=0;i<n-1;i++) f[i+2]=f[i+1]+f[i];習(xí)題1有一只經(jīng)過訓(xùn)練的蜜蜂只能爬向右側(cè)相鄰的蜂房,不能反向爬行。請編程計(jì)算蜜蜂從蜂房a爬到蜂房b的可能路線數(shù)。其中,蜂房的結(jié)構(gòu)如下所示。習(xí)題2:樓梯的走法:有一樓梯共M級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第M級,共有多少種走法?內(nèi)容提要遞推法遞歸法遞歸法直接或間接地調(diào)用自身的算法稱為遞歸算法。用函數(shù)自身給出定義的函數(shù)稱為遞歸函數(shù)。遞歸法例1階乘函數(shù)
階乘函數(shù)可遞歸地定義為:遞歸基始遞歸方程邊界條件與遞歸方程是遞歸函數(shù)的二個要素,遞歸函數(shù)只有具備了這兩個要素,才能在有限次計(jì)算后得出結(jié)果。遞歸法階乘函數(shù)的程序:longfac(intn){if(n==0)return1;elsereturnn*fac(n-1);}遞歸法例2Ackerman函數(shù)當(dāng)一個函數(shù)及它的一個變量是由函數(shù)自身定義時,稱這個函數(shù)是雙遞歸函數(shù)。Ackerman函數(shù)A(n,m)定義如下:遞歸法例3Hanoi塔問題設(shè)a,b,c是3個塔座。開始時,在塔座a上有一疊共n個圓盤,這些圓盤自下而上,由大到小地疊在一起。各圓盤從小到大編號為1,2,…,n,現(xiàn)要求將塔座a上的這一疊圓盤移到塔座b上,并仍按同樣順序疊置。在移動圓盤時應(yīng)遵守以下移動規(guī)則:規(guī)則1:每次只能移動1個圓盤;規(guī)則2:任何時刻都不允許將較大的圓盤壓在較小的圓盤之上;規(guī)則3:在滿足移動規(guī)則1和2的前提下,可將圓盤移至a,b,c中任一塔座上。遞歸法漢諾塔問題的程序:voidhanoi(intn,chara,charb,charc){
if(n>0){
hanoi(n-1,a,c,b);
move(a,b);
hanoi(n-1,c,b,a);}}voidmove(a,b){ println(“%c%c”,a,b);}遞歸法優(yōu)點(diǎn):結(jié)構(gòu)清晰,可讀性強(qiáng),而且容易用數(shù)學(xué)歸納法來證明算法的正確性,因此它為設(shè)計(jì)算法調(diào)試程序帶來很大方便。缺點(diǎn):遞歸算法的運(yùn)行效率較低,無論是耗費(fèi)的計(jì)算時間還是占用的存儲空間都比非遞歸算法要多。遞歸法在遞歸算法中消除遞歸調(diào)用,使其轉(zhuǎn)化為非遞歸算法1、采用一個用戶定義的棧來模擬系統(tǒng)的遞歸調(diào)用工作棧。該方法通用性強(qiáng),但本質(zhì)上還是遞歸,只不過人工做了本來由編譯器做的事情,優(yōu)化效果不明顯。2、用遞推來實(shí)現(xiàn)遞歸函數(shù)。3、通過變換能將一些遞歸轉(zhuǎn)化為尾遞歸,從而迭代求出結(jié)果。后兩種方法在時空復(fù)雜度上均有較大改善,但其適用范圍有限習(xí)題3:寫一個進(jìn)制轉(zhuǎn)換的函數(shù):convert(intn):輸入一個十進(jìn)制數(shù)n,將它轉(zhuǎn)換成R
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 46932-2025民航北斗授時系統(tǒng)技術(shù)規(guī)范
- 江蘇省南京市鼓樓區(qū)2025-2026學(xué)年上學(xué)期期末語文四年級試卷(無答案)
- 飛科介紹教學(xué)課件
- 2026湖南婁底市婁星區(qū)青年就業(yè)見習(xí)單位第二批招募見習(xí)人員22人參考考試題庫及答案解析
- 2026山東德州市事業(yè)單位招聘初級綜合類崗位人員參考考試題庫及答案解析
- 2026福建廈門工學(xué)院面向臺灣地區(qū)招聘高層次人才參考考試題庫及答案解析
- 2026春季夢想靠岸招商銀行江門分行校園招聘筆試參考題庫及答案解析
- 洗浴中心策劃活動方案(3篇)
- 航空總部活動策劃方案(3篇)
- 裝飾校園活動策劃方案(3篇)
- 2025-2026年蘇教版初一歷史上冊期末熱點(diǎn)題庫及完整答案
- 規(guī)范園區(qū)環(huán)保工作制度
- 藥理學(xué)試題中國藥科大學(xué)
- 卓越項(xiàng)目交付之道
- (人教版)八年級物理下冊第八章《運(yùn)動和力》單元測試卷(原卷版)
- 2026屆新高考語文熱點(diǎn)沖刺復(fù)習(xí) 賞析小說語言-理解重要語句含意
- 武術(shù)學(xué)校體育器材項(xiàng)目 投標(biāo)方案(技術(shù)方案)
- DL∕T 1057-2023 自動跟蹤補(bǔ)償消弧線圈成套裝置技術(shù)條件
- 市場營銷部門主管聘用協(xié)議
- 期貨投資說課市公開課一等獎省賽課微課金獎?wù)n件
- (詳盡多場合)中標(biāo)方支付招標(biāo)代理費(fèi)合同范本
評論
0/150
提交評論