中山网站制作公司,淘宝二官方网站是做啥的,百度北京总部电话,综合网站推广的含义一、01背包问题 图解详细解析 #xff08;转载#xff09; https://blog.csdn.net/qq_37767455/article/details/99086678
#xff1a;Vi表示第 i 个物品的价值#xff0c;Wi表示第 i 个物品的体积#xff0c;定义V(i,j)#xff1a;当前背包容量 j#xff0c;前 i 个物…一、01背包问题 图解详细解析 转载 https://blog.csdn.net/qq_37767455/article/details/99086678
Vi表示第 i 个物品的价值Wi表示第 i 个物品的体积定义V(i,j)当前背包容量 j前 i 个物品最佳组合对应的价值 大概看懂并根据公式手填了一下表格
最优性原理的基本思想是一个问题的最优解包含了其子问题的最优解。换句话说一个问题的最优解可以通过其子问题的最优解递推得到。
最优性原理的应用条件是问题具有最优子结构即一个问题的最优解可以通过其子问题的最优解递推得到。如果一个问题不具有最优子结构则不能使用动态规划算法求解。 疑问原理为什么是这样的公式呢
二、【动态规划】01背包问题通俗易懂超基础讲解 https://blog.csdn.net/qq_38410730/article/details/81667885
【好的理解评论】 我认为那个对于面对一个商品的可能性的描述应该是这样 1.包的总容量比商品体积小即使不装其他商品也不可能装得下该商品此时价值与前i-1个商品的价值一样即v[i][j]v[i-1][j]; 2.包的总容量大于等于该商品但若拿出其它商品来获得容量装该商品此时价值不一定大于前i-1个商品的最大价值所以在装与不装该商品之间选定一个即V(i,j)maxV(i-1,j)V(i-1,j-w(i))v(i) 【评论】 jw(i) V(i,j)V(i-1,j) jw(i) V(i,j)maxV(i-1,j)V(i-1,j-w(i))v(i) 各位老师我对这个迭代公式的理解V(i,j)是指让你最多装j容量的情况下前i个商品的最大价值其实是根据题目最终的容量来定义的也就是让你最多装8容量求前4个商品的最大价值。那么可以这么理解第i个商品装不下那只能装前i-1个商品V(i,j)就等于V(i-1,j)第i个商品装的下装和不装两种情况的最优价值是不一样的取一个最大值V(i,j)max{V(i-1,j),V(i-1,j-w(i))v(i)},V(i-1,j-w(i))v(i)这个表示我装第i个商品那么前i-1个商品只能让你最多装j-w(i)的情况下的最大价值。 【】 在状态表V(i,j)中 “j” 就是表示当前背包的总容量。并且在状态转移方程中 V(i-1,j-w(i)) 也并不是说当前背包容量减少了w(i)而是说为了在当前容量为 j 的背包中装入容量为w(i)的物品所以往前寻找背包容量为 j-w(i) 的状态下的最优值 V(i-1,j-w(i))这也是状态转移方程的意义所在。 【】 V(0,j)当前背包容量为j前0个物品最佳组合对应的价值肯定是0啊没放东西 V(i,0)当前背包容量为0前j个物品最佳组合对应的价值肯定是0啊放不进去。 【】 动态规划推导不出来递推关系式怎么搞-- 多看看一些动态规划的例子感觉一下这只能多做些题目就有思路了。 【】 我在手动填表格的时候才真正理解V(i-1,j-w(i))的意思。例如V(48背包容量为8的时候是否塞入第4个商品的最优V。塞入第4个商品的解为因为第4个商品的W是5先在背包腾出5的空间既定要放进第4个商品也就是空间为3的最优解加上第4个商品的价值v4。
三、动态规划 原理
1、动态规划中的无后效性Principle of Optimality指的是一个问题的最优解包含了其子问题的最优解且子问题的最优解不受后续决策的影响。换句话说一个问题的最优解可以通过其子问题的最优解递推得到而且子问题的最优解不受后续决策的影响。
这个性质是动态规划算法的核心原理之一也是其能够高效求解具有最优子结构问题的关键。在动态规划算法中问题被分解成一系列子问题并通过递推的方式求解子问题的最优解。在求解过程中使用了一些启发式规则和策略来指导搜索过程从而加速搜索并提高搜索结果的质量。同时通过保存已经求解的子问题的结果避免了重复计算提高了算法的效率。
需要注意的是无后效性是动态规划算法的基本性质之一但并不是所有问题都具有无后效性。如果一个问题不具有无后效性则不能使用动态规划算法求解。因此在使用动态规划算法时需要先确定问题是否具有无后效性以避免错误的求解方法。 2、什么是无后效性 https://blog.csdn.net/qq_30137611/article/details/77655707 所谓无后效性原则指的是这样一种性质某阶段的状态一旦确定则此后过程的演变不再受此前各状态及决策的影响。也就是说“未来与过去无关”当前的状态是此前历史的一个完整总结此前的历史只能通过当前的状态去影响过程未来的演变。具体地说如果一个问题被划分各个阶段之后阶段k中的状态只能通过阶段k1中的状态通过状态转移方程得来与其他状态没有关系特别是与未发生的状态没有关系这就是无后效性 https://baike.baidu.com/item/%E6%97%A0%E5%90%8E%E6%95%88%E6%80%A7/1135283 3、什么是动态规划Dynamic Programming动态规划的意义是什么 https://www.zhihu.com/question/23995189
四、 完全背包 https://zhuanlan.zhihu.com/p/93857890 完全背包unbounded knapsack problem与01背包不同就是每种物品可以有无限多个一共有N种物品每种物品有无限多个第ii从1开始种物品的重量为w[i]价值为v[i]。在总重量不超过背包承载上限W的情况下能够装入背包的最大价值是多少