关于动态规划【0-1背包思想在实际问题中是怎么转化的?】

目录

一、两道例题

二、转化的共同点


一、两道例题

例1、力扣416.分割等和子集

例2、力扣1049.最后一块石头的重量II

二、转化的共同点

1、递推公式

纯粹的0-1背包问题的递推公式是:

dpj = max(dpj,dpj-weight\[i]+valuei); // max里面放的是"取"或"不取"当前物品i,这两种情况;

【这两个实际0-1背包问题的应用,都有一个共同点就是:它们的数组里的值就是物品的重量和价值】

所以转化以后的递推公式是:

dpj = max(dpj,dpj-nums\[i]+numsi);

【0-1背包问题要解决的就是【背包最大能装的重量、每个物品的重量、每个物品的价值】

问:背包最多能装多少价值

所以,第二个共同点是定义背包最大能装的重量。】

2、背包最大能装质量

纯粹的0-1背包问题的最大能装重量已知

(由题目就能判断出)

转化为实际0-1背包问题的应用时,要先分析后定义

(例1、力扣416.分割等和子集。定义背包最大能装的重量为:数组全部数值总和的一半sum/2)

(例2、力扣1049.最后一块石头的重量II。定义背包最大能装的重量为:数组全部数值总和的一半 sum/2 )(这里 sum/2 是向下取整)

相关推荐
小超人诞生日记15 分钟前
C++ 智能指针的使用及其原理详解
c++·算法
AiNightVision4 小时前
无人机夜视模块如何选择?——从参数指标到系统集成的完整选型指南
人工智能·算法·计算机视觉·车载系统·无人机·视频·智能硬件
牧羊人.3334 小时前
卷积神经网络之VGG
人工智能·深度学习·神经网络·算法·cnn
小郎君6585 小时前
Vue 多标签页的加载态设计:为什么我没有用 Suspense 实现 PageLoading
vue.js·算法
JJJennie7775 小时前
MAI Gateway私有化部署全攻略:大模型网关如何接入?附架构图
算法·gateway·ai网关·魔芋ai
東隅已逝,桑榆非晚6 小时前
算法3.双指针法-快乐数
c++·笔记·学习·算法
专注仿真6 小时前
卷积神经网络(CNN)算法详解
人工智能·python·算法·代码·大模型训练
FII工业富联科技服务6 小时前
多智能体如何进入制造现场?从业务协同到数字孪生验证
大数据·人工智能·算法·机器人·制造·数字孪生
≮傷£≯√6 小时前
httpserver_QNetWorkClient
算法
Evand J6 小时前
【PMSM例程11】永磁同步电机(PMSM)基于UKF的转速与转子位置估计。附下载链接
算法·matlab·卡尔曼滤波·永磁同步电机·ukf·pmsm·位置估计