动态规划法例题

第一个空,用手工计算,可以用贪心法

先选择价值最大的物品,有两个价值是6的物品,重量合计2+4=6

剩余4个空间,只能放重量为2的物品,一共是6+6+3=15

第二个空,需要将所有物品都放进背包舱室,假定物品数量为n,背包空间为w,时间浮渣度是O(nw)

第三个空

部分背包使用归并排序,手工计算,先计算出各个物品1个重量的价值

分别是3,1.5,5/6,0.8,1.5.

首先选择单位价值最大的,单位价值是3的物品。重量是2

接着选择单位价值次大的,单位价值是1.5,重量分别是2和4,一共占用了2+2+4=8

剩下两个重量,选择单位价值是5/6的,总价值是=2*3+2*1.5+2*1.5+2*5/6=16.67

第四个空

每次计算各个物品的单位价值时间复杂度是O(logn)

每个物品都放背包里,时间复杂度是O(n)

时间复杂度是O(nlogn)

相关推荐
叩码以求索28 分钟前
统计按位或能得到最大值的子集数目(一)
数据结构·算法
tachibana21 小时前
hot100 数组中的第K个最大元素(215)
java·数据结构·算法·leetcode
txzrxz1 小时前
单调队列讲解
数据结构·c++·算法·单调队列
不会就选b2 小时前
算法日常・每日刷题--<快排>4
算法
Keven_112 小时前
算法札记:树状数组的用途
数据结构·算法
用户677437175812 小时前
C++函数参数传递方式详解:string、string&、const string、const string&该怎么选?
算法
cpp_25012 小时前
P1540 [NOIP 2010 提高组] 机器翻译
数据结构·c++·算法·队列·noip·洛谷题解
晚笙coding2 小时前
LeetCode 98:验证二叉搜索树 —— 从局部判断到全局范围约束的递归思想
算法·leetcode·职场和发展
学计算机的计算基3 小时前
回溯算法下篇:四道经典题讲透约束剪枝、原地标记、预计算与状态压缩
java·笔记·算法
霸道流氓气质3 小时前
SpringBoot中实现告警判定算法-位报警与模拟量阈值-技术详解
spring boot·算法·jquery