資料結構與演算法 10 遞迴呼叫

2022-06-23 23:33:13 字數 513 閱讀 7603

遞迴詳解-典型遞迴介紹

1.如何理解“遞迴”?(什麼是遞迴)

去的過程叫“遞”,回來的過程叫“歸”f(n)=f(n-1)+1

備註:去的過程入棧的過程,回來的過程出棧

2.遞迴需要滿足的三個條件(遞迴的特點)

2.1. 一個問題的解可以分解為幾個子問題的解

2.2. 這個問題與分解之後的子問題,除了資料規模不同,求解思路完全一樣

2.3. 存在遞迴終止條件

3.如何編寫遞迴**?(怎樣實現遞迴)

3.1寫出遞推公式,找到終止條件

歸納:寫遞迴**的關鍵就是找到如何將大問題分解為小問題的規律,並且基於此寫出遞推公式,然後再推敲終止條件,最後將遞推公式和終止條件翻譯成**

編寫遞迴**的關鍵是,只要遇到遞迴,我們就把它抽象成一個遞推公式,不用想一層層的呼叫關係,不要試圖用人腦去分解遞迴的每個步驟

4.注意點(遞迴弊端)

遞迴**要警惕堆疊溢位

遞迴**要警惕重複計算

都可以將遞迴使用迴圈+棧實現