演算法分析與設計這門課程第二章遞迴與分治策略的知識點有哪些

2021-04-18 14:30:45 字數 3018 閱讀 5134

1樓:中國人民大學網路教育

演算法分析與設計這門課第二章遞迴與分治策略的知識點包含章節導引,第一節演算法總體思想,第二節遞迴,第三節分治法,課後練習,。

演算法分析與設計這門課一共有多少章節?

2樓:中國人民大學網路教育

這門課一共有6個章節。包括:第一章演算法概述,第二章遞迴與分治策略,第三章動態規劃,第四章貪心演算法,第五章回溯法,第六章分支限界法,。

《演算法分析與設計》課程講什麼內容?

3樓:中國人民大學網路教育

《演算法分析與設計》課程是理論性與應用性並重的專業課程。本課程以演算法設計策略為知識單元,系統地介紹計算機演算法的設計方法和分析技巧。課程教學主要內容包括:

第一章,演算法概述;第二章,遞迴與分治策略;第三章,動態規劃;第四章,貪心演算法;第五章,回溯法;第六章,分支限界法。通過介紹經典以及實用演算法讓同學掌握演算法設計的基本方法。結合例項分析,讓同學深入理解演算法設計的技巧,以及分析演算法的能力。

演算法分析與設計的作品目錄

演算法設計與分析的作品目錄

4樓:浠家系列73澆

第1章 入門

第2章 漸近符號

第3章 演算法分析方法

第4章 遞迴

第5章 分治演算法

第6章 動態規劃

第7章 貪心演算法

第8章 圖演算法

第9章 網路流與匹配

第10章 線性規劃

第11章 np完全理論

第12章 回溯

第13章 分支限界

第14章 啟發式搜尋

第15章 數論

第16章 計算幾何

參考文獻

遞迴演算法和非遞迴演算法在分析時間複雜度和空間複雜度上為什麼不同

5樓:奔跑的窩牛的家

在演算法分析中,當一個演算法中包含遞迴呼叫時,其時間複雜度的分析會轉化為一個遞迴方程求解。實際上,這個問題是數學上求解漸近階的問題,而遞迴方程的形式多種多樣,其求解方法也是不一而足,比較常用的有以下四種方法:

(1)代入法(substitution method)

代入法的基本步驟是先推測遞迴方程的顯式解,然後用數學歸納法來驗證該解是否合理。

(2)迭代法(iteration method)

迭代法的基本步驟是迭代地遞迴方程的右端,使之成為一個非遞迴的和式,然後通過對和式的估計來達到對方程左端即方程的解的估計。

(3)套用公式法(master method)

這個方法針對形如「t(n) = at(n/b) + f(n)」的遞迴方程。這種遞迴方程是分治法的時間複雜性所滿足的遞迴關係,即一個規模為n的問題被分成規模均為n/b的a個子問題,遞迴地求解這a個子問題,然後通過對這a個子間題的解的綜合,得到原問題的解。

(4)差分方程法(difference formula method)

可以將某些遞迴方程看成差分方程,通過解差分方程的方法來解遞迴方程,然後對解作出漸近階估計。

下面就以上方法給出一些例子說明。

一、代入法

大整數乘法計算時間的遞迴方程為:t(n) = 4t(n/2) + o(n),其中t(1) = o(1),我們猜測一個解t(n) = o(n2 ),根據符號o的定義,對n>n0,有t(n) < cn2 - eo(2n)(注意,這裡減去o(2n),因其是低階項,不會影響到n足夠大時的漸近性),把這個解代入遞迴方程,得到:

t(n) = 4t(n/2) + o(n)

≤ 4c(n/2)2 - eo(2n/2)) + o(n)

= cn2 - eo(n) + o(n)

≤ cn2

其中,c為正常數,e取1,上式符合 t(n)≤cn2 的定義,則可認為o(n2 )是t(n)的一個解,再用數學歸納法加以證明。

二、迭代法

某演算法的計算時間為:t(n) = 3t(n/4) + o(n),其中t(1) = o(1),迭代兩次可將右端為:

t(n) = 3t(n/4) + o(n)

= o(n) + 3( o(n/4) + 3t(n/42 ) )

= o(n) + 3( o(n/4) + 3( o(n/42 ) + 3t(n/43 ) ) )

從上式可以看出,這是一個遞迴方程,我們可以寫出迭代i次後的方程:

t(n) = o(n) + 3( o(n/4) + 3( o(n/42 ) + ... + 3( n/4i + 3t(n/4i+1 ) ) ) )

當n/4i+1 =1時,t(n/4i+1 )=1,則

t(n) = n + (3/4) + (32 /42 )n + ... + (3i /4i )n + (3i+1 )t(1)

< 4n + 3i+1

而由n/4i+1 =1可知,i0,有f(n) = o(nlogb a-ε ),則t(n) = o(nlogb a )

2.若f(n) = o(nlogb a ),則t(n) = o(nlogb a *logn)

3.若f(n) = o(nlogb a+ε ),且對於某常數c>1和所有充分大的正整數n,有af(n/b)≤cf(n),則t(n)=o(f(n))。

設t(n) = 4t(n/2) + n,則a = 4,b = 2,f(n) = n,計算得出nlogb a = nlog2 4 = n2 ,而f(n) = n = o(n2-ε ),此時ε= 1,根據第1種情況,我們得到t(n) = o(n2 )。

這裡涉及的三類情況,都是拿f(n)與nlogb a 作比較,而遞迴方程解的漸近階由這兩個函式中的較大者決定。在第一類情況下,函式nlogb a 較大,則t(n)=o(nlogb a );在第三類情況下,函式f(n)較大,則t(n)=o(f (n));在第二類情況下,兩個函式一樣大,則t(n)=o(nlogb a *logn),即以n的對數作為因子乘上f(n)與t(n)的同階。

但上述三類情況並沒有覆蓋所有可能的f(n)。在第一類情況和第二類情況之間有一個間隙:f(n)小於但不是多項式地小於nlogb a ,第二類與第三類之間也存在這種情況,此時公式法不適用。

客戶關係管理這門課程第二章關係與關係營銷的知識點有哪些

客戶關係管理這門課第二章關係與關係營銷的知識點包含章節導引,第一節識別客戶,第二節建立關係,第三節關係營銷,第四節關係營銷實踐,客戶關係管理這門課程第三章客戶滿意與客戶忠誠的知識點有哪些?客戶關係管理這門課第三章客戶滿意與客戶忠誠的知識點包含章節導引,第一節客戶滿意,第二節客戶忠誠,第三節客戶滿意與...

應用寫作(第二版)這門課程第二章國家行政機關公文(上)的知識

應用寫作 第二版 這門課第二章國家行政機關公文 上 的知識點包含章節導引,第一節公文的格式和行文關係,第二節命令 令 第三節決定,第四節公告,第五節通告,第六節通知,第七節通報。應用寫作 第二版 這門課程第三章國家行政機關公文 下 的知識點有哪些?應用寫作 第二版 這門課第三章國家行政機關公文 下 ...

《國際私法第二版》這門課程第二章的知識點有哪些

國際私法 第二版 這門課程第二章的知識點包含自然人 法人 國家 外國人民事法律地位的幾種制度。國際私法 第二版 這門課程第九章的知識點有哪些?國際私法 第二版 這門課程第九章的知識點包含涉外結婚的法律適用 涉外離婚的法律適用 涉外夫妻關係和父母子女關係的法律適用涉外扶養 監護和收養的法律適用。國際私...