【发布时间】:2021-02-03 12:37:23
【问题描述】:
在阅读 CLRS 第 15.3 节“我应该何时使用动态编程”时。并在解释最优子结构时给出了2个例子,它们是未加权的最长简单路径和未加权的最短路径。
他们说,
寻找最长简单路径的子问题不是独立的,而对于最短路径它们
这就是为什么我们不能使用动态规划解决未加权最长简单路径的原因,我对此没有任何问题,但他们也说
第 15.1 节和第 15.2 节中研究的两个问题都有独立的子问题......在棒材切割中,为了确定切割长度为 n 的棒材的最佳方式,我们研究切割长度为I 对于 I = 0, 1,..., n-1。因为长度 -n 问题的最佳解决方案只包括这些子问题解决方案中的一个(在我们切断了第一个部分之后),所以子问题的独立性不是问题。
最后一句话
子问题的独立性不是问题。
子问题的独立性是否存在问题?如果不是问题那么为什么他们说第一句话或者我只是我误解了一些东西。
【问题讨论】:
标签: algorithm dynamic-programming