1.问题
装载问题(0-1背包问题)
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/5bded84f677f8a63c3c322491bd69c61.png)
2.解析
装载问题(0-1背包问题)算法解析
思路:轻者先装,直到再装任何集装箱将使轮船载重量超过B时停止。
定理:对于任何正整数n,算法(轻者先装)对n个集装箱的实例得到最优解。
证明(数学归纳法):
(1)k=1,只有1个集装箱,其重量小于B。任何装法都只有一种方式,因此都是最优解。故轻者先装也是最优解。
(2)归纳假设:假设算法对于规模为n的输入都能得到最优解。
考虑规模为n + 1的输入,![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/a345dc2c0c0888b92a06cecf68d908b1.png)
是集装箱重量,其中![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4fe5e78bc4c1af91ee00af238e1b156b.png)
现在从N中取出最轻的集装箱,得到n规模的输入: