网站大量收购独家精品文档,联系QQ:2885784924

5.7.背包问题数据结构与算法.pdf

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
动态规划算法 解背包问题 背包问题(Knapsack Problem) 一个旅行者随身携带一个背包. 可以放 入背包的物品有n 种, 每种物品的重量 和价值分别为w , v 如果背包的最大 i i . 重量限制是b, 每种物品可以放多个. 怎 样选择放入背包的物品以使得背包的 价值最大? 不妨设上述w , v , b 都是 i i 正整数. 实例:n = 4,b =10 v = 1, v = 3, v = 5, v = 9, 1 2 3 4 w = 2, w = 3, w = 4, w = 7, 2 1 2 3 4 建模 解是x , x ,..., x ,其中x 是装入背包的 1 2 n i 第i 种物品个数 n 目标函数 max v x i 1 i i n  w x  b, x N 约束条件 i 1 i i i 线性规划问题: 由线性条件约束的线性函 数取最大或最小的问题 整数规划问题: 线性规划问题的变量xi 都是非负整数 3 子问题界定和计算顺序 子问题界定:由参数k 和y 界定 k :考虑对物品1, 2, ... , k 的选择 y :背包总重量不超过y 原始输入:k = n, y = b 子问题计算顺序: k = 1, 2, ... , n 对于给定的k ,y = 1, 2, ... , b 4 优化函数的递推方程 F (y ): 装前k 种物品, 总重不超过y, k 背包达到的最大价值 F (y ) max{F (y ),F (y  w )  v } k k 1 k k k F (y ) 0, 0  y  b, F (0) 0, 0  k  n 0 k  y  F (y ) v ,F (y )  y  0 1   1 k w  1  类似于投资问题,如何写递推方程 这两种写法有什么区别 F (y ) max {F (y x w )  x v } k

文档评论(0)

恬淡虚无 + 关注
实名认证
内容提供者

学高为师,身正为范.师者,传道授业解惑也。做一个有理想,有道德,有思想,有文化,有信念的人。 学无止境:活到老,学到老!有缘学习更多关注桃报:奉献教育,点店铺。

1亿VIP精品文档

相关文档