- 博客(4)
- 资源 (2)
- 收藏
- 关注
原创 背包问题
与0-1 背包问题类似,所不同的是在选择物品i 装入背包时,可以选择物品i 的一部分,而不一定要全部装入背包. 算法分析: 首先计算每种物品的单位重量的价值, 然后依贪心策略,将尽可能多的单位重量价值最高的物品装入背包. 实现: /* * description: 背包问题 * 问题描述:与0-1背包问题类似,所不同的是在选择物品i装入背包时,可以选择 * 物品i的...
2010-12-14 18:27:51 199
原创 0-1背包问题
0-1背包问题: 给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的总容量为c。 问:应该如何选择装入背包的物品,使得装入背包中物品的总价值最大? 在选择装入背包的物品时,对每种物品i只有两种选择,即装入背包或不装入背包,因此该问题称为0-1背包问题。 该问题的形式化描述是: 0-1背包问题具有最优子结构性质,可用动态规划法解决。 解法一: 动态规划 算法分...
2010-12-14 18:00:13 229
原创 装载问题
装载问题 有一批共n个集装箱要装上两艘载重量分别为c1和c2的轮船,集装箱总重量小于等于c1+c2,要求定一个合理的装载方案可将这n个集装箱装上这两艘轮船。 可以证明,如果一个给定装载问题有解,则采用下面的策略可得到最优的装载方案: 1)首先将第一艘轮船尽可能装满 2)将剩余的集装箱装上第二艘轮船 将第一艘轮船尽可能装满等价于选取全体集装箱的一个子集,使该子集中集装箱重量之和接近第...
2010-12-12 18:16:05 267
原创 最优装载问题
问题描述: 有一批集装箱要装上一艘载重量为C的轮船,要求在装载体积不受限制的情况下,将尽可能多的集装箱装上轮船。 算法分析: 采用重量轻者先装的贪心选择策略,可产生最优装载问题的最优解。 算法实现: OptinalLoading.java /* * 最优装载 * 有一批集装箱要装上一艘载重量为C的轮船。 * 要求在装载体积不受限制的情况下,将尽可能多的集装箱装上轮船。...
2010-12-12 11:13:16 168
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人