动态规划day1
2026.3.29
一、背包问题
动态规划理解方式
dp问题没有模板,重在多刷题,积攒解题经验。
但我们可以用以下思维方式来理解dp问题,帮助我们更好地学习动态规划。
dp可分为状态表示和状态计算两部分。
状态表示
其中,状态表示分为集合和属性两个小部分。对于背包问题来说,集合一般指的是所有选法,且集合需要满足2个条件:1. 从前i个物品中选 2.总体积≤j
也就是说,我们可以用一个二维集合f[i,j],表示所有从前i个物品中选择,且总体积≤j的所有选法,这就是这个问题的状态表示中的集合部分,是一个抽象的概念。
接下来是状态表示的属性部分。这个非常容易理解,我们最终要求一个值,所以f[i,j]集合储存的是集合中的某个属性,可能是最大值(MAX),最小值(MIN),也可能是数量,但总之是这个抽象集合中的一个具体值。对于背包问题而言,通常是最大值。
状态计算
我们求解一个问题,肯定是要得到最终结果的,状态计算的作用就是这个。
那么该如何计算,从而求得一个问题结果?
我们用了集合划分的方法,这是状态计算的核心。
但不同问题的划分方法不一样,这就是为什么dp问题没有一个统一的模板,只能总结出一个大致的理解方式。
那么我们接下来以01背包为例,先讲一下01背包的集合划分是什么样的。
01背包
01背包的状态表示部分,已经在上面作为例子讲述过,不再复述。我们直接来看状态计算:
假设我们要求f[i,j]——从前i个物品中选,且体积≤j的所有选法中,价值最大的选法。
相关新闻
深入解析C++继承体系:从访问控制到虚继承的全面指南
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
学生资助小程序全栈毕设:微信登录+RBAC+SSM+MySQL部署实战
简介:本资源是一套完整的毕业设计项目——学生资助在线管理小程序,面向计算机专业本科生及Java全栈初学者,解决高校学生资助业务中信息分散、流程低效、角色协同不足等实际问题。系统采用微信小程序(前端)SSM框架&…
注意事项分拣事件精确集合相似度矩阵器:边界规则、可运行源码与验收
项目编号:20261023-002。公开产品简介只提供需求方向;源码、测试与合成输入独立编写,不依赖对应产品。场景与问题边界 逐对计算集合交并集和Jaccard分数,用BigInt交叉乘法比较显式分数阈值,只标记复核候选。注意事项分…
最新新闻
Python自动化竞价脚本实战:Playwright时间同步与状态机设计
“夺宝岛”这三个字,在玩拍卖竞价的人眼里基本等同于一场心跳游戏——倒计时还剩十几秒,页面上的价格每跳一次,手指就跟着抖一下。手动点加价,点慢了被别人截胡,点快了又怕自己把价格顶上去下不来。于是很多人第一反应…
图书馆系统DFD实战:三层建模与PDF交付规范
简介:本资源是一份面向计算机专业学生及软件工程初学者的图书馆管理系统分析与设计学习材料,聚焦数据流图(DFD)建模实践,适用于课程设计、期末考试复习与系统分析能力训练。文件为单页PDF(628KB)…
私有云认证面试核心:虚拟化、高可用与排障实战
面过几轮私有云方向的认证面试之后,我大致摸清了考官的偏好:他们不太关心你能不能背出某个功能的菜单位置,更在意你把一台虚拟机从创建、跑起来、出事被捞回来的整条链路,能不能讲得没有断层。HCIE私有云这类面试攻略的核心&#…
马尾辫参数化:内容工业视觉标准件的生产逻辑
1. 先搞清楚:为什么偏偏是马尾辫做内容这行时间长了,会发现一个挺有意思的现象:真正被大规模复用的东西,往往不是最惊艳的那个,而是最省事的那个。马尾辫就是典型。它几乎不挑脸型、不挑场合、不挑设备,一个…
ARMEL版OpenOCD调试ESP32:从解压到自动化烧写全指南
简介:这份资源是面向嵌入式开发者的 OpenOCD ESP32 调试工具包,专为 Linux ARMEL 架构编译,版本 0.11.0(2022 年 10 月发布),可解决 ESP32 固件烧录、JTAG/SWD 调试与 GDB 远程调试等需求,适合从…
移动设备深度定制五步法:从权限突破到安全回滚的完整指南
1. 从“越狱”这个词说起:它到底指什么“越狱”这个词在移动设备圈子里流传了十几年,很多人第一次听到会联想到监狱,其实它指的是突破系统对应用安装和文件访问的限制,让设备能运行未经官方应用商店审核的软件、访问系统深层目录、…
日新闻
Python股票自动交易系统源码解析:从行情获取到风控的完整链路
简介:这份资源是面向高校计算机、金融相关专业毕业设计场景的完整项目源码包,主题为基于Python的股票自动交易系统,适合需要完成毕设选题、课程设计或自学金融量化交易开发的学生与开发者参考。压缩包共收录687个文件,整体约14.93…
视酷酷信IM源码部署指南:Java 17+MySQL 8.0.33实战配置
简介:这是一套2024年亲测可部署的视酷酷信IM即时通讯系统源码,面向具备Java、OC、C#及Vue开发能力的技术人员,解决私有化即时通讯平台快速搭建与二次定制需求,尤其适用于需集成商城、保障数据主权的中小型企业或独立开发者。资源共…
Python爬取百度迁徙数据:接口解析、批量采集与避坑指南
简介:这份资源是一个用Python爬取百度迁徙数据的脚本压缩包,面向具备Python基础、希望入门网络爬虫与数据解析的开发者,解决按日期获取全国热门城市人口迁徙数据的问题。包内共1个文件,为单个py脚本,压缩包约1KB&#…
周新闻
全国计算机二级C语言真题PDF高效刷题指南
简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…
requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南
简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…
递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现
简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…
月新闻
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …