算法---动态规划(持续更新学习)

1.动态规划的经典问题

(1)动规基础:爬楼梯、斐波那契数列
(2)背包问题:0-1背包,多重背包
(3)打家劫舍
(4)股票问题
(5)子序列问题

2.动态规划的思路流程

(1)dp数据定义和下标的定义
(2)递推公式
(3)dp数组如何初始化
(4)遍历顺序
(5)打印顺序

3.0-1背包

(1)0-1背包,有n种物品,每种物品都只有1个,每个物品有自己的重量和价值,有一个重量为m的背包,问这个背包最多能装价值为多少的物品。
物品0 1 (重量) 15(价值)
物品1 3 (重量) 40(价值)
物品2 4 (重量) 30(价值)
背包最大重量是4。
装满这个背包的最大价值是?
1)dp数组定义和下标定义
dp[i][j],编号下标为[0,i]的物品放进容量为j的背包里。
2)递推公式
dp[i][j]可以从哪几个方向推导出来
dp[i-1][j]:不放物品i
dp[i-1][j-weight[i]]+value[i] :放物品i(不放物品i背包的最大价值:背包的容量-放物品i的重量)
dp[i][j]=max(dp[i-1][j],dp[i-1][j-weight[i]+value)
3)dp数组如何初始化
正常的初始化是
在这里插入图片描述

当背包容量是0的时候,物品0、物品1、物品2都不能放入到背包中。我们假设物品0的重量是2,索引当背包容量是0和背包容量是1的时候物品都放不来,使用前两列第一行初始化为0。
在这里插入图片描述

4)遍历顺序
对于二维数组的0-1背包问题,可以颠倒两个for循环的顺序,先遍历背包和先遍历物品都是没差别的。因为取一个元素,当前元素都是由正上方和左上方推导出来。
5)打印顺序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/97417.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/97417.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

迅睿CMS自定义网站表单:HTML方式调用Select下拉选项数据指南

在迅睿CMS中,当我们需要自定义网站表单并希望以HTML方式调用select下拉选项数据时(而非使用系统默认的{$myfield}、{$diyfield}或{$sysfield}模板变量),可以采用以下方法实现。 问题背景 默认情况下,迅睿CMS表单字段通…

k8s--efk日志收集

目录 环境准备 下载efk软件包 下载 nfs 设置nfs开机自启 创建共享存储目录 配置共享目录文件 加载nfs 使共享目录生效 查看 node节点验证 共享目录配置成功 进入efk配置文件目录 修改deployment.yaml文件 修改为master主节点ip 修改为nfs共享存储目录 修改 kibana …

数值分析——算法的稳定性

由于计算时,误差会有累积,如果是长时间的计算,就会影响最后得到的结果,因此,需要分析一下误差的影响能否控制,由此就引出了算法的稳定性 数值的稳定性 对于某一种算法,如果初始值有很小的误差&a…

解密 Kotlin 中的隐藏调度器:Dispatchers.Main.immediate

在日常的 Android 开发中,我们经常使用协程来处理异步任务。你可能已经熟悉了 Dispatchers.Main、Dispatchers.IO 和 Dispatchers.Default,但今天我要介绍一个不太为人知却极其有用的调度器:Dispatchers.Main.immediate。 一个令人困惑的现象…

I2C多点触控驱动开发详解

I2C多点触控驱动开发详解 1. 多点触控技术概述 1.1 触控技术发展历程 触控技术作为人机交互的重要方式,经历了从单点触控到多点触控的演进过程。早期的电阻式触控屏只能实现单点触控,限制了用户体验。随着电容式触控技术的发展,多点触控成为可…

UE5提升分辨率和帧率的方法

提问:分辨率大概理解就是是否模糊,帧率大概理解就是是否卡顿对吗 回答 没错,一句话总结: 分辨率主要影响“看起来糊不糊”; 帧率与帧时间稳定性主要影响“顺不顺”。 如何快速提升UE5的分辨率? 是的&…

小狼毫输入法中让数字键盘上的数字键不再选择候选词而是与原始输入一起直接上屏

使用搜狗输入法的双拼时,输入“womf”然后按下主键盘上的数字1,会选择排名第一的候选词上屏(大概率是“我们),输入“womf”然后按下数字键盘上的数字1,不会选择候选词,而是将输入文本变成“womf…

【C++】类和对象(终章)

作者主页:lightqjx 本文专栏:C 目录 一、构造函数 1. 构造函数体赋值 2. 初始化列表 (1)基本概念 (2)使用特性 3. explicit关键字 二、static成员 1. 概念 2. 特性 3. 应用 三、友元 1. 友元函…

水果目标检测[2]:ALAD-YOLO:一种轻便、精确的苹果叶病检测仪

原文: 目录 摘要: ALAD-YOLO的改进: 1.轻量化主干网络: 2.改进的 Neck 网络: 3.改进的 SPP 模块: 4.注意力机制引入: 实验结果 数据: 1 数据采集 (Data Collection) 2 数…

Let‘s Encrypt证书自动续期

证书失效后浏览器可以看到错误提示,以及证书过期时间。 排查服务器证书续期配置 1. 证书未正确安装或配置 确保在阿里云服务器上部署的 Let’s Encrypt 证书已经正确安装。你可以通过以下步骤确认: 使用命令 sudo certbot certificates 检查证书是否正确…

Redis-基数统计、位图、位域、流

Redis-基数统计、位图、位域、流一、基数统计 HyperLogLog二、位图 Bitmap三、位域 Bitfild四、流 Stream一、基数统计 HyperLogLog 基数统计:是用来做基数(不重复的数)统计的算法 (统计不重复出现的数据的个数) 基数统计VS集合 集合: uv …

IBMS-建筑内分散的子系统(如 BA、安防、消防、能源、电梯等)进行数据互联、功能协同与智能管控

IBMS(Integrated Building Management System,楼宇集成管理系统)并非简单的 “系统叠加”,而是通过对建筑内分散的子系统(如 BA、安防、消防、能源、电梯等)进行数据互联、功能协同与智能管控,实…

LabVIEW温采监控系统

​温度采集监控系统以LabVIEW 软件平台,构建起一套高效、可靠的温度监测与控制体系。系统可实时采集、显示、存储温度数据,超限时自动报警并执行温控操作,适用于多类场景,能满足精准温控需求,解决传统系统灵活性差、成…

Docker核心概念与镜像仓库操作指南

文章目录一、名词概念Docker镜像Docker镜像仓库二、Docker镜像仓库常用命令三、容器启动相关指令Nginxdocker rundocker ps四、综合实例1.搭建Nginx服务2.Docker hub上创建私有仓库一、名词概念 Docker镜像 Docker 镜像:是一个只读的模板,它包含了创建…

科技信息差(8.30)

🌍DeepSeek V3.1 Base突袭上线!击败Claude 4编程爆表,全网在蹲R2和V4🎄语音界Sora!微软刚开源新模型,一次生成90分钟语音、3200倍压缩率VibeVoice-1.5B开创了语音界多个重大技术突破:一次性可连…

【国内电子数据取证厂商龙信科技】ES 数据库重建

我们公司在协助侦办一起案件现场勘查遇到这样一个案件,现场没有 获取到服务器数据库密码,且涉案服务器数据巨大,涉及到的数据库并不 是 mysql 数据库,而是 elasticsarch 数据库,这给我们侦办案件带来了极 大的困难&…

【51单片机定时1秒中断控制流水灯方向】2022-11-14

缘由C语言怎么编可中断取反流水灯-编程语言-CSDN问答 用P1口做输出口,接八只发光二极管。编写程序,使发光二极管循环点亮,循环点亮时间间隔为1秒,该时间间隔用定时器中断实现。/ INT0 接单次脉冲输出,每当有外部中断信…

Megatron-LM(模型并行)

Megatron-LM: Training Multi-Billion Parameter Language Models Using Model Parallelism 1. 技术设计原则 Megatron-LM 提出轻量级层内模型并行,无需定制编译器或修改框架,仅通过在 PyTorch 原生代码中插入少量通信操作(如all-reduce&…

C/C++:AddressSanitizer内存检测工具

AddressSanitizer是gcc自带的内存检测工具&#xff0c;无需额外安装 常见问题 #include <stdlib.h>// 越界访问 void stack_buffer_overflow() {char buffer[1];int i 10;buffer[i] A; // 访问越界 }// 野指针 void use_after_free() {char *text (char *)malloc(size…

【源码】智慧工地系统:智能化施工现场的全新管理方案

智慧工地系统是一个综合利用物联网&#xff08;IoT&#xff09;、大数据、云计算、人工智能&#xff08;AI&#xff09;、移动互联网和BIM&#xff08;建筑信息模型&#xff09;等新一代信息技术&#xff0c;对施工现场的“人、机、料、法、环”等关键要素进行实时、全面、智能…