例题

n=5,C=13,w={4,5,4,3,10},v={9,10,9,2,24}

P[i.c] C=0 1 2 3 4 5 6 7 8 9 10 11 12 13
i=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 9 9 9 9 9 9 9 9 9 9
2 0 0 0 0 9 10 10 10 10 19 19 19 19 19
3 0 0 0 0 9 10 10 10 18 19 19 19 19 28
4 0 0 0 2 9 10 10 11 18 19 20 21 21 28
5 0 0 0 2 9 10 10 11 18 19 24 24 24 28

P[2.5]的含义是考虑前两个物品,装体积为5 的价值是10,背包体积就减少4,无法再装下第一个物品。也可以放弃第二个物品装第一个物品,价值是9,最大的是10.所以装第二个物品。
P[2.9]的含义是考虑前两个物品,装体积为5 的价值是10,背包体积就减少4,还能再装下第一个物品价值是9,总价值是19.另一种情况是舍弃第二件物品,直接装第一件物品价值是9,价值明显是装两件时候的大。
P[3.8]的含义是若装第三件物品价值加9,背包容量减少4,问题就变成了P[2.4]查表就知道P[2.4]最大是价值9,所以总价值是18;另一种情况是舍弃第三件物品,问题就变成P[2.8],查表发现最大价值是10。10明显没有18大,所以最大价值就是18.
P[3.9]的含义是若装第三件物品价值加9,背包容量减少4,问题就变成了P[2.4]查表就知道P[2.4]最大是价值9,所以总价值是18;另一种情况是舍弃第三件物品,问题就变成P[2.9],查表发现最大价值是19。19比18 大,所以最大值是19。
P[3.13]的含义是若装第三件物品价值加9,背包容量减少4,问题就变成了P[2.9]查表就知道P[2.9]最大是价值19,所以总价值是28;另一种情况是舍弃第三件物品,问题就变成P[2.13],查表发现最大价值是19。28比19大,所以最大值是28。
其他就以此类推,每一行的判断加与不加最后那个物品的两种情况,若加,价值就是P[(i-1),c-w]+v,若不加,价值就是P[i-1,c],比较这两个价值大小即可。

01背包问题的填表方法相关推荐

  1. 01背包问题 动态规划求解方法 动态方程的详细解释 能理解的解释(附python代码)

    01背包问题属于组合优化问题:假设你要出门旅游,你现在有一个书包,这个书包的容量(capacity)有限,有很多物品如牙刷.防晒霜.雨伞.水杯等等,但书包装不下所有物品,因此我们必须有所取舍.那么通常 ...

  2. java动态规划货车运输_动态规划01背包问题_动态规划方法在配送线路优化中的应用研究...

    [摘要] 应用图论的方法对配送线路进行优化的缺点是,当线路复杂时计算较为烦琐,而应用动态规划的方法能有效解决这个问题.本文从理论上应用动态规划的方法对共同配送线路进行优化,并应用此方法对实际问题进行计 ...

  3. 0-1 背包问题的 4 种解决方法算法策略

    蛮力法 递归与分治策略 动态规划 贪心算法 回溯法 分支限界法 前言 0-1 背包是一个经典的问题,而它能用不同的算法思想去解决.恰巧最近在看算法,学习算法就是学习解决问题的思路.现在将 0-1 背包 ...

  4. 背包问题(01背包问题,多重背包问题,完全背包问题)——基于python的动态规划

    1. 0-1背包问题 1.1 题目描述 有一个包和n个物品,包的容量为m,每个物品都有各自的体积和价值,问当从这n个物品中选择多个物品放在包里而物品体积总数不超过包的容量m时,能够得到的最大价值是多少 ...

  5. 零崎的补番计划Ⅱ(0-1背包问题)

    零崎的补番计划Ⅱ 题目描述 虽然零崎已经有了补番目录,然而零崎发现就算是假期,他也有各(da)种(ma)各(jiang)样的事情要做,所以零崎现在要在有限的时间内尽量补完更有价值看的视频. 零崎的假期 ...

  6. 九种 0-1 背包问题详解

    目录 动态规划概念 问题1:0-1背包问题 问题2:完全背包问题 问题3:多重背包问题 问题4:混合背包问题 问题5:二维背包问题 问题6:分组背包问题 问题7:有依赖的背包问题 (困难) 问题8:背 ...

  7. 0-1背包问题详解-动态规划-两种方法

    问题描述: 给定n种物品和一背包.物品i的重量为wi,其价值为vi, 背包容量为c.问应如何选择装入背包中的物品,使得背入背包的物品的总价值最大? 解析: 此问题形式化的描述是,给定c > 0, ...

  8. 0-1背包问题详解(DP分支限界回溯三种方法)

    0-1背包 将n个项目的权重和值,放入一个容量为W的背包中,得到背包中最大的总价值.换句话说,给定两个整数数组val[0..n - 1]和wt [0 . .n-1],分别表示与n个项目相关的值和权重. ...

  9. 动态规划---01背包问题(2种方法)

    一.动态规划 代表一类问题(最优子结构或子问题最优性)的一般解法,是设计方法或者策略,不是具体算法 本质:递推,核心是找到状态转移的方式,写出dp方程. 解决问题:交叉,重叠子问题(最优子问题) 形式 ...

  10. 动态规划之0-1背包问题(思路详解+表格演示过程+最优解打印方法+详细代码)

    问题简介 输入:n种物品和一个背包 物品i的重量是wi,价值为vi 背包的容量是C 输出:装入背包的物品 优化目标是:装入背包的物品总价值最大 优化子结构 设(x1,x2,x3-xn)是0-1背包问题 ...

最新文章

  1. mac地址修改_快速更改WiFi MAC地址
  2. 微信小程序如何让获取view的高度
  3. drtek收音机使用说明_【火腿实验室】使用双FSL中波环形天线消除同频干扰电台信号...
  4. AIX系统相关的日常操作
  5. JAVA并发编程3_线程同步之synchronized关键字
  6. stm32 CRC-16校验代码,单片机ModBUS-CRC16校验
  7. WMS仓库管理系统出入库流程管理
  8. 安卓原生系统_你没有用过的安卓系统:原生安卓桌面体验
  9. 华氏温度转摄氏温度c语言作业,C语言摄氏度互相转换华氏
  10. 同是匿名社交,国内外“秘密”大不同
  11. AI红包皮速领,人类现金速抽|祝大家新春快乐
  12. hmmlearn使用简介
  13. IMF: Interactive Multimodal Fusion Model for Link Prediction
  14. Android之scheme使用
  15. Mybatis类型转换器使用
  16. cocos2d-html5游戏图片资源选择
  17. Qt中多线程的一种使用
  18. 在 VMware Workstation 16 Pro 中安装 Windows 10 x64
  19. asp.net(vb)与sql的连接(代码写在web.config中的)
  20. ubuntu配置jre8

热门文章

  1. Spring Security 配置
  2. 基于canoe 新建一个lin工程_详细步骤讲解如何在CANoe中创建一个LIN通讯工程(多图+详解)...
  3. 新型远程下载功能路由器NW762简介
  4. 如何禁用计算机内网,局域网计算机怎么禁用U盘
  5. 金蝶k/3 现金流量表编制口诀
  6. CSS 基础教程:CSS 选择器
  7. 花生壳域名申请、内网映射到树莓派及与微信公众号对接
  8. 如何向别人推荐(分享)一本书
  9. 【LTspice】006 实际电容 阻抗特性曲线
  10. python 马赛克拼图_用Python和OpenCV实现照片马赛克拼图(蒙太奇照片)