- 博客(3)
- 收藏
- 关注
原创 用动态规划算法解决0-1背包问题
用动态规划算法解决0-1背包问题需要了解以下基本概念和原理:1.使用动态规划算法必须具备两个基本要素:最优子结构性质和重叠子问题性质2.动态规划算法常以自底向上的方式计算最优值,也就是说,从最小的子问题开始向包含该子问题的大问题方向求解,把每一次求解出的子问题的解保存下来,以便提供给包含该小问题的大问题使用,因此使用循环迭代方式计算更为合理,但从动态规划算法的两个基本要素可以看出,直接以递
2016-04-30 21:44:25 20122 1
原创 用回溯法解决0-1背包问题
用回溯法解决0-1背包问题需要解决一下问题:1.如何动态生成子集树2.如何设计子集树中的结点类型3.如何设计两个剪枝函数:约束函数和限界函数4.如何保存一个或多个最优解,同时保存最优值解决方法:1.子集树通过动态的方式生成,子集树中的结点类型共用物品类型,其中结点之间的父子关系通过递归调用的方式关联,这种关系并不在类中设置变量显示表示。2.为了方便限界函数的计算和程
2016-04-27 19:02:22 14342 2
原创 用优先队列式分支限界法解决0-1背包问题
用优先队列式分支限界法解决0-1背包问题的算法思想:1.分支限界法常以广度优先或最小耗费优先(最大效益优先)方式搜索问题的解空间树, 对于0-1背包问题的解空间树是一个颗子集树。2.在分支限界法中有一个活结点表,活结点表中的每个活结点只有一次机会成为扩展结点,一旦成为 扩展结点就一次性产生所有儿子结点,在这些儿子结点中,导致不可行解或导致非最优解的儿子 结点被舍弃,其余儿子结点被加入到活
2016-04-26 20:28:23 34448 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人