遞歸與循環(huán)
分解問題卤材,返回當(dāng)最小子問題情況的結(jié)果遮斥,其他問題分解為已知結(jié)果和子問題。 對(duì)子問題扇丛,迭代調(diào)用當(dāng)前函數(shù)术吗。
一般可以用遞歸解決的問題都可以用棧來解決。效率更高
考點(diǎn)
斐波那契數(shù)列
青蛙跳臺(tái)階
漢諾塔
查找
順序查找
二分查找
哈希查找
二叉樹查找
考點(diǎn)
旋轉(zhuǎn)數(shù)組的最小數(shù)字
排序
快速排序
歸并排序
堆排序
桶排序
回溯法
類似暴力解法
考點(diǎn)
機(jī)器人運(yùn)動(dòng)范圍
動(dòng)態(tài)規(guī)劃
動(dòng)態(tài)規(guī)劃(Dynamicprogramming)通過把原問題分解為相對(duì)簡(jiǎn)單的子問題的方式求解復(fù)雜問題的方法帆精。動(dòng)態(tài)規(guī)劃常常適用于有重疊子問題和最優(yōu)子結(jié)構(gòu)性質(zhì)的問題.大致上较屿,若要解一個(gè)給定問題隧魄,我們需要解其不同部分(即子問題),再合并子問題的解以得出原問題的解隘蝎。一旦某個(gè)給定子問題的解已經(jīng)算出购啄,則將其數(shù)組存儲(chǔ),以便下次需要同一個(gè)子問題解之時(shí)直接查表嘱么。相當(dāng)于逆向的遞歸