美文网首页
01背包问题-通俗易懂

01背包问题-通俗易懂

作者: arkulo | 来源:发表于2015-09-27 17:05 被阅读7238次

尊重劳动成果,转载请注明

github地址:
https://github.com/arkulo56/thought/blob/master/software/algorithm/%E7%AE%97%E6%B3%95---01%E8%83%8C%E5%8C%85%E9%97%AE%E9%A2%98.md


有编号为a、b、c、d、e的5件物品,他们的重量分别是2、2、6、5、4,他们的价值分别是6、3、5、4、6,现在给你一个承重为10的背包,如何让背包里装的物品拥有最大的价值??

一、让我们先用现实生活来还原一下这个场景:

去出差,衬衫、西服、领带、剃须刀...都已经装进包里了,手里拿着ipad在犹豫带不带(因为包已经装不下了)?

1)第一种情况:不带了,包就这么大,现在包里的东西出差就够用了!

2)第二种情况:必须要带,因为ipad里有重要的ppt,那就只能在包里预留出ipad空间,看看剩下的空间怎么摆放那些必须要带的东西!

到底怎么做才是最合理(价值最大化)?#####
二、一些数学的东西

n代表东西的数量、c代表包的最大承重、Wi是第i件物品的重量、Pi是第i件物品的价值、F[i,j]是最大价值(i个物品放入承重j的包)

那真实场景中的问题用数学的方式来表达,如果要求F[i,j]的最大值,则要看这两种 状态

第一种情况(不带):F[i-1,j]
第二种情况(带):F[i-1,j-Wi]+Pi (j>= Wi) (在背包中给ipad预留空间Wi,剩下的i-1件物品重新摆放,最后在加上ipad的价值Pi)

那什么才是最合理?也就是价值最大化?那就是看这两种情况哪种更有利于我出差! 状态转换方程

F[i,j] = MAX(F[i-1,j], F[i-1,j-Wi]+Pi)

是不是悟出了些规律,最大值取决于ipad装与不装,同时也取决于之前的i-1个物品!

三、接下来请看看这张图,先明白原理

<img src="https://raw.githubusercontent.com/arkulo56/thought/master/images/algorithm/beibao.png" width="600" />

有了这张图和上面总结的公式,我们就可以很清晰的理解01背包算法了

  1. e2单元格:当只有一件物品e,包的容量是2时,装不进去,所以最大值为0
  2. a8单元格:物品包括a、b、c、d、e,容量为8时,F[i-1,j]=F[b,8]=9,F[i-1,j-Wi]+Pi=F[b,6]+6=9+6=15,两种情况取最大值,因此这里的最大值是15
  3. 其他单元格依此类推...
五、代码代码

还没有写,稍后补充...

相关文章

  • 01背包问题-通俗易懂

    尊重劳动成果,转载请注明 github地址:https://github.com/arkulo56/thought...

  • 动态规划-背包问题

    01背包问题 详解:01背包问题详解链接

  • 背包问题1(01背包)

    N件物品,没见有重量Wi,价值Vi;选其中几件放入容量为M的背包中,求价值的最值。——经典背包问题背包问题分三类:...

  • 01背包问题

    动态规划算法一般用来求解最优化问题,当问题有很多可行解,而题目要求寻找这些解当中的“最大值”/“最小值”时,通常可...

  • 01背包问题

    题目描述:给定 n 个物品和一个容量为 W 的背包,物品 i 的重量是 wi,其价值为 vi 。应该如何选择装入背...

  • 01背包问题

    有n个重量和价值分别为wi,vi的物品。从这些物体中挑选出总重量不超过W的物品,求所有方案中价值总和的最大值。 1...

  • 01背包问题

    A - Bone Collector Many years ago , in Teddy’s hometown t...

  • 01背包问题

    令V(i,j)表示在前i(1<=i<=n)个物品中能够装入容量为就j(1<=j<=C)的背包中的物品的最大价值,则...

  • 01背包问题

    题目:有A(2kg,6$);B(2kg,3$);C(6kg,5$);D(5kg,4$);E(4kg,6$)五种物品...

  • 01背包问题

    题目: 有限个数的货物,具有不同的体积还有价值,怎么让其放进有限体积的背包并价值最大。 货物只有两种可能,放进去/...

网友评论

      本文标题:01背包问题-通俗易懂

      本文链接:https://www.haomeiwen.com/subject/npewcttx.html