基本算法 分治算法和動態(tài)規(guī)劃有什么不同和聯(lián)系?
分治算法和動態(tài)規(guī)劃有什么不同和聯(lián)系?1、分而治之法和動態(tài)規(guī)劃的主要共同點是:1)都要求原問題具有最優(yōu)子結(jié)構(gòu)的性質(zhì),都是對原問題進(jìn)行分而治之,將原問題分解成若干個較小的子問題。然后將子問題的解進(jìn)行組合,
分治算法和動態(tài)規(guī)劃有什么不同和聯(lián)系?
1、分而治之法和動態(tài)規(guī)劃的主要共同點是:1)都要求原問題具有最優(yōu)子結(jié)構(gòu)的性質(zhì),都是對原問題進(jìn)行分而治之,將原問題分解成若干個較小的子問題。然后將子問題的解進(jìn)行組合,形成原問題的解。
2、分治法與動態(tài)規(guī)劃實現(xiàn)方法:①分治法通常采用遞歸求解。
②動態(tài)規(guī)劃一般采用自下而上的迭代法求解,也可采用帶記憶函數(shù)的遞歸法自上而下求解。
3、分治法與動態(tài)規(guī)劃的主要區(qū)別如下:1。分治法把分解的子問題看作是獨立的。
②在動態(tài)規(guī)劃中,分解的子問題被理解為相互關(guān)聯(lián)和重疊的部分。