遞迴遞推練習專題總結

2021-07-29 22:37:28 字數 813 閱讀 3134

遞推遞迴是比較重要的一部分內容,但有些問題理解起來比較抽象。最主要最困難的就是找到關係式,一旦找到關係式用**實現起來就非常簡潔了。遇到遞迴遞推的題目,要先明確用遞迴遞推的方法來解題否則用其它方式將更為繁瑣。還有就是預處理,在很多遞推的題目中用預處理,能大大節省時間和空間。遞迴一般經常用函式來實現,通過函式的呼叫得到結果。

1.遞迴演算法

程式直接或間接呼叫自身的程式設計技巧稱為遞迴演算法。直接或間接呼叫自身的函式稱為遞迴函式,它通常把乙個大型複雜的問題層層轉化為乙個與原問題相似的規模較小的問題來求解。

遞迴的基本思想:問題分解:把乙個不能或不好解決的大問題轉化為乙個或幾個小問題,再把這些小問題進一步分解成更小的小問題,最小問題可以直接解決。 

遞迴的關鍵在於找出遞迴方程式和遞迴終止條件。遞迴需要有邊界條件、遞迴前進段和遞迴返回段。當邊界條件不滿足時,遞迴前進;當邊界條件滿足時,遞迴返回。

遞迴定義:使問題向邊界條件轉化的規則。遞迴定義必須能使問題越來越簡單。

遞迴邊界條件:也就是所描述問題的最簡單情況,它本身不再使用遞迴的定義。

遞迴演算法解題通常有三個步驟:

1)分析問題、尋找遞迴:找出大規模問題與小規模問題的關係,這樣通過遞迴使問題的規模逐漸變小。

2)設定邊界、控制遞迴:找出停止條件,即演算法可解的最小規模問題。

2.遞推演算法

乙個問題的求解需一系列的計算,在已知條件和所求問題之間總存在著某種相互聯絡的關係;如果可以找到前後過程之間的數量關係,能使複雜運算化為若干步重複的簡單運算,充分發揮出計算機擅長於重複處理的特點。遞推演算法的首要問題是得到相鄰的資料項間的關係(即遞推關係)。把乙個複雜的問題的求解,分解成了連續的若干步簡單運算。

遞推遞迴專題總結

這個專題的題目比較少,但是還是沒能做完,我感到很殘酷,好多人都做完了我卻沒有,因為後面幾道我感覺很難,這個專題的題目給我的感覺就是用 來表達數學,只要找到了題目中的規律,題目就會變得很簡單,否則很難做出來。這個專題給我感受最深的是馬攔過河卒那道,那道題很好理解,但是我沒能做出來,就是因為沒能找到其中...

遞迴遞推練習 1

有一對夫婦買了一頭母牛,它從第2年起每年年初生一頭小母牛。每頭小母牛從第四個年頭開始,每年年初也生一頭小母牛。輸入乙個數求此時共多少牛。本題中的牛不死,而思路,設今年是第i年,i年的羊數等於i 1年數加上今年出生的羊,而新生小羊三年後可生羊,那麼i 3年內出生羊無生育能力,那麼i 3年有多少羊,i年...

遞推遞迴練習 G

題目要求 考試分配座位,老師會按照考好分配固定的座位,每兩個人之間至少留下兩個空座位,只關注教室一排座位,設每排有n 1 n 45 個座位,這一排至少坐乙個人的前提下,一共有多少種坐法。題目思路 n 45,所以直接利用迴圈求出1至45個座位的坐法,利用遞推,陣列a代表i個座位的坐法種數,a i a ...