分治法与动态规划法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、动态规划法与分治法的区别:

1.共同点:

将待求解的问题分解成若干子问题,先求解子问题,然后再从这些子问题的解得到原问题的解。

2. 不同点:

○1、适合于用动态规划法求解的问题,分解得到的各子问题往往不是相互独立的;而分治法中子问题相互独立。

○2、动态规划法用表保存已求解过的子问题的解,再次碰到同样的子问题时不必重新求解,而只需查询答案,故可获得多项式级时间复杂度,效率较高;而分治法中对于每次出现的子问题均求解,导致同样的子问题被反复求解,故产生指数增长的时间复杂度,效率较低

二、动态规划法与贪心法的区别

1、共同点:

都要求问题具有最优子结构性质。

2、不同点:

○1求解方式不同:

动态规划法:自底向上;具有最优子结构性质的问题有些只能用动态规划法,有些可用贪心法。贪心法:自顶向下;

○2对子问题的依赖不同:

动态规划法:依赖于各子问题的解,所以应使各子问题最优,才能保证整体最优;贪心法:依赖于过去所作过的选择,但决不依赖于将来的选择,也不依赖于子问题的解。

三、本章小结

1、动态规划法:是一种求解最优化问题的算法设计策略;

用于处理不具备贪心准则的问题;用于解决分治法的子问题重叠现象;

2、动态规划法的两个基本要素:

最优子结构特性和重叠子问题

备忘录方法是动态规划法的一个变种,采用自顶向下直接递归的方式计算最优解,避免相同子问题的重复。

相关文档
最新文档