【概述】

背包问题(Knapsack problem)是一种组合优化的NP完全问题。

问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。问题的名称来源于如何选择最合适的物品放置于给定背包中。

也可以将背包问题描述为决定性问题,即:在总重量不超过W的前提下,总价值是否能达到V?

【分类】

  1. P01 0-1背包问题:最基本的背包问题,每个物品最多只能放一次。    点击这里
  2. P02 完全背包问题:基本的背包问题模型,每种物品可以放无限多次。    点击这里
  3. P03 多重背包问题:每种物品有一个固定的次数上限。    点击这里
  4. P04 混合三种背包问题:将前三种的问题叠加成较复杂的问题。    点击这里
  5. P05 二维费用的背包问题:费用增加了一维。    点击这里
  6. P06 分组的背包问题:对于每件物品,具有两种不同的费用;选择这件物品必须同时付出这两种代价。    点击这里
  7. P07 有依赖的背包问题:给物品的选取加上限制的方法。    点击这里
  8. P08 泛化物品的背包问题:没有固定的费用和价值,而是它的价值随着你分配给它的费用而变化。    点击这里
  9. P09 背包问题问法的变化:除在背包容量的限制下求可取最大价值外的其他问法。    点击这里

【例题】

各种背包问题模版:点击这里

1.01背包

  1. 开心的金明(洛谷-P1060):点击这里
  2. 小A点菜(洛谷-P1164):点击这里
  3. 采药(洛谷-P1048):点击这里
    同题:采药(信息学奥数一本通-T1290):点击这里
  4. 装箱问题(洛谷-P1049):点击这里
  5. Bone Collector(HDU-2602):点击这里
    同题:装箱问题(信息学奥数一本通-T1295):点击这里
  6. 01背包问题(信息学奥数一本通-T1267):点击这里
  7. Charm Bracelet(信息学奥数一本通-T1294):点击这里
    英文版:Charm Bracelet(POJ-3624):点击这里
  8. 榨取kkksc03(洛谷-P1855):点击这里
  9. 正整数分组(51Nod-1007):点击这里
  10. 开餐馆(信息学奥数一本通-T1296):点击这里
  11. 烹调方案(洛谷-P1417)(贪心+01背包):点击这里
  12. Proud Merchants(HDU-3466)(贪心+01背包):点击这里
  13. Cow Roller Coaster(POJ-3257)(贪心+01背包):点击这里
  14. Big Event in HDU(HDU-1171)(思维+01背包):点击这里
  15. Course Selection System(ZOJ-3956)(公式推导+01背包):点击这里
  16. Dima and Salad(CF-366C)(扩容+01背包):点击这里
  17. Simple Knapsack(AtCoder-2556)(扩容+01背包):点击这里
  18. 多米诺骨牌(洛谷-P1282)(思维+扩容+01背包):点击这里

2.完全背包

  1. 完全背包问题(信息学奥数一本通-T1268):点击这里
  2. 疯狂的采药(洛谷-P1616):点击这里
  3. Piggy-Bank(HDU-1114)(思维+完全背包):点击这里
  4. Battle Ships(ZOJ-3623)(思维+完全背包):点击这里
  5. Dollar Dayz(POJ-3181)(完全背包+高精度加法):点击这里

3.多重背包

  1. 庆功会(信息学奥数一本通-T1269):点击这里
  2. Buns(CF-106C):点击这里
  3. 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(HDU-2191):点击这里
  4. Ant Counting(POJ-3046)(贪心+多重背包):点击这里

4.其他

  1. 混合背包(信息学奥数一本通-T1270)(01背包+完全背包+多重背包):点击这里
  2. The Fewest Coins(POJ-3260)(完全背包+多重背包):点击这里
  3. 潜水员(信息学奥赛一本通-T1271)(二维费用背包):点击这里
  4. 宠物小精灵之收服(信息学奥赛一本通-T1292)(二维费用背包):点击这里
  5. 分组背包(信息学奥赛一本通-T1272)(分组背包):点击这里
  6. Washing Clothes(POJ-3211)(分组背包+01背包):点击这里
  7. 金明的预算方案(洛谷-P1064)(有依赖的背包):点击这里
  8. 货币系统(信息学奥赛一本通-T1273)(最优方案数):点击这里
  9. 数字组合(信息学奥数一本通-T1291)(方案总数):点击这里
  10. 买书(信息学奥数一本通-T1293)(方案总数):点击这里
  11. 高橋君とカード / Tak and Cards(AtCoder-2037)(方案总数):点击这里

动态规划 —— 背包问题相关推荐

  1. 贪婪算法、递归计算、动态规划背包问题

    //贪婪算法计算背包问题public static double ksack(double[] values, double[] weights, int capacity){double load ...

  2. 动态规划——背包问题(01背包问题)

    动态规划--背包问题(01背包问题) 01背包问题(求最大价值): 问题优化 01背包问题(求方案数): 动态规划--背包问题(01背包问题) 01背包问题(求最大价值): 有N件物品和一个最多能背重 ...

  3. 动态规划背包问题优化空间复杂度——滚动数组

    动态规划背包问题优化空间复杂度--滚动数组 背包问题 空间复杂度优化 Java代码 链接:代码随想录背包问题 背包问题   背包问题是动态规划中基本的问题,我们考虑下面的简单问题:   假设背包容量为 ...

  4. 动态规划——背包问题(详解)

    动态规划是我最早接触的算法,一开始非常简单,固定模板题,后来愈发愈发难起来了,条件,状态压缩等等,难点主要是,状态怎么表示,状态转移方程怎么写,这篇文章将会从背包五大问题详解,希望能帮助到大家去类比, ...

  5. 动态规划——背包问题

    动态规划--背包问题 对于背包问题,今天我们先讲解,01背包,完全背包,和多重背包.我主要从: 什么题可以用背包问题解决 背包问题的模板细节,如何准确写出背包. 1.什么题可以用背包问题解决 看到题目 ...

  6. 动态规划背包问题详解(二)---0-1背包问题

    /**  * 对于技术面试,你还在死记硬背么?  * 快来"播"沙糖橘吧,  * 用视频案例为你实战解读技术难点  * 聚焦Java技术疑难点,实战视频为你答疑解惑  * 越&qu ...

  7. 【入门级】Java解决动态规划背包问题

    目录 前言 动态规划背包问题是什么? 动态规划解题转代码 第一步:拆包填表格 第二步:转为代码 一.首先看空表格:即初始化代码 二.看怎么循环填表格 三.输出结果(最大价值) 第三步:完整代码 动态规 ...

  8. Java-算法-动态规划-背包问题

    看完本篇文章可以再多练习相似题目 算法-动态规划-背包问题-附一 ​​​​​​​ 一. 背包问题介绍 1. 最原始的背包问题 给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择 ...

  9. 动态规划---背包问题分析

    0/1背包 问题描述 有N件物品和一个容量为V的背包,第i件物品的体积为c[i],价值为w[i].求将哪些物品放进背包可以使物品价值总和最大(有两种情况:不要求填满背包和填满背包). 每件商品只有一件 ...

  10. 动态规划 —— 背包问题 P09 —— 背包问题的变化

    [输出方案] 一般而言,背包问题是要求一个最优值,如果要求输出这个最优值的方案,可以参照一般动态规划问题输出方案的方法:记录下每个状态的最优值是由状态转移方程的哪一项推出来的,换句话说,记录下它是由哪 ...

最新文章

  1. 网络上的FreeBSD在线文档
  2. python学习:语句
  3. ES6-14 Unicode表示法、字符串方法、模板字符串
  4. bum报文_Vxlan学习笔记——原理
  5. SaaS-HRM(5)系统用户权限设计(角色管理、权限和资源管理)
  6. 台式计算机怎么连手机热点,台式电脑怎么连接手机热点进行上网
  7. VS code(Visual Studio Code)乱码解决方法
  8. 新手怎么购买阿里云服务器【图文教程】
  9. 中国大学MOOC-陈越、何钦铭-数据结构
  10. 激励人生成功的10句经典中英文
  11. 我们平常习惯讲的手机容量-运行内存(RAM)和机身内存(ROM)的理解
  12. 基于51单片机HX711的电子秤称重计价proteus仿真程序设计
  13. 模电(三)晶体三极管
  14. java手机游戏开发人才短缺
  15. MATLAB人工神经网络的手写数字识别系统
  16. 英语年份怎么读(2008怎么读)
  17. Mina GMS/MEID Activate 本地解锁真实速度
  18. Linux服务器必会命令-操作秀
  19. 计算机键盘上顿号在哪,电脑键盘上的顿号在哪个位置,最简单实用的电脑知识...
  20. 无人机不能解锁四个电机发出滴滴滴的声音

热门文章

  1. 码农30岁后的体检——你最需要的是直面的勇气
  2. mysql 数据库event_mysql数据库事件调度(Event)
  3. 罗马音平假名片假名转换器_记不住五十音的你,你肯定需要这套日语五十音谐音巧记法...
  4. 电商后台原型 rp_电商选型:一站式线上商城的重要性
  5. 三问Spring事务:解决什么问题?如何解决?存在什么问题?
  6. 原创 | 万万没想到,JVM内存结构的面试题可以问的这么难?
  7. 剥开浮躁表面,直指金融科技内心
  8. 轻量级Java持久化框架,Hibernate完美助手,Minidao 1.6.2版本发布
  9. Spring Boot开发之流水无情(二)
  10. Q-learning家族【强化学习】