1. 程式人生 > >南大算法設計與分析課程復習筆記(3)L3 - Recursion

南大算法設計與分析課程復習筆記(3)L3 - Recursion

函數 -- 例子 復習筆記 圖片 感覺 有一個 mas 進行

一、遞歸方程

按照分治的思想,可以將一個遞歸的復雜度寫成遞歸方程

技術分享圖片

一、解遞歸方程--猜然後證明

該方法又稱為代入法,步驟如下:

1、猜解的形式

2、數學歸納法證明正確

例子:

我們假設有如下遞歸式:

技術分享圖片

我們猜其解為T(n)=O(nlgn),然後對遞歸式進行替換,得

技術分享圖片

特別註意:我們替換之後得出的結果必須嚴格符合猜想,上面的例子如果最後得出T(n)<=cnlgn+1,都說明我們猜錯了,需要選擇新的猜解式。

二、解遞歸方程--遞歸樹解

感覺這種方法比較的麻煩,一般用代入法和下面的master定理來做

例子

對於遞歸方程式:

技術分享圖片

它的遞歸樹如下:

技術分享圖片

三、master定理

如果a>=1和b>1,假設有一個遞歸函數,遞歸式如下:

技術分享圖片

則有如下3條:

技術分享圖片

南大算法設計與分析課程復習筆記(3)L3 - Recursion