算法问题:

ROBOT 2003-05-15 09:07:53
有n个物品(Goods),每个物品有不同的重量(Weight)和价值(values),要求取出其中一部分物品,使其重量不超过一给定值(limitWeight),但价值最大(MaxValue)。如何取?
(不可用组合的方法)
...全文
93 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lucy198204 2003-06-02
  • 打赏
  • 举报
回复
可以用递归
rappercn 2003-06-02
  • 打赏
  • 举报
回复
是“规划求解”问题吧?Excel2000已经内嵌了此功能:

----设某工厂生产甲乙两种产品,生产一种甲产品需要A、B、C三种原料的量分别为8、5、4,可获利润为9。生产一种乙产品需要A、B、C三种原料的量分别为6、5、9,可获利润为12。现在工厂中A、B、C三种原料的量分别为360、250、350,求生产甲、乙两种产品各多少才能使利润最大?最大利润是多少?
of123 2003-06-02
  • 打赏
  • 举报
回复
并不简单。这是一个博弈问题,如果迭代遍历所有可能则计算量很大。
例如:取少量价值大重量也大的物品,还是取更多价值较小但重量也小的物品。
但是价重比的概念还是重要的。

是否这样处理?但不一定能得到最优解。
首先令总重量=0
1 所有物品按价重比(降序),重量(升序)排列。
2 总重量=总重量+第一项重量
3 如果超重,回到上一个总重量,跳到下一项,回到第二步
4 否则计算重量余额,并检索出所有重量小于余额的物品。回到第一步。
5 直到数据尾

如果要得到最优解,需要记录已有解的物品项号。重复以上步骤,但项号相同时不取,转向下一个可能项。

直至取得所有可能解,比较各个解的价值。
ROBOT 2003-06-02
  • 打赏
  • 举报
回复
nobody can get it?
zqfleaf 2003-05-16
  • 打赏
  • 举报
回复
有道理,再想想...
ROBOT 2003-05-16
  • 打赏
  • 举报
回复
Re:zqfleaf(动力港湾)
这样办法没法办到:实际上当它们“价重比”比较接近时而重量不一时,一个“价重比”是毫无意义的。
unrknight 2003-05-15
  • 打赏
  • 举报
回复
背包问题?
zqfleaf 2003-05-15
  • 打赏
  • 举报
回复
1.按每一个价值/重量==价重比
从大到小排序,然后从上面取下来
2.考虑化整的问题。

比较笨的方法
ROBOT 2003-05-15
  • 打赏
  • 举报
回复
此问题看似简单,, 但我想了好长时间(两天)也没得解。

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧