暂时pass的题目的学习笔记(按类型分类 ):动态规划、递归

动态规划类

学习笔记来自公众号labuladong

  • 动态规划的一般形式就是求最值——其核心问题是穷举
  • 但动态规划的穷举有些特别,因为这类问题存在重叠子问题 如果暴力穷举的话效率会极其低下,所以需要**「备忘录」或者「DP table」**来优化穷举过程,避免不必要的计算
  • 动态规划问题一定具备最优子结构,才能通过子问题的最值得到原问题的最值,要符合“最优子结构”,子问题间必须互相独立。
  • 只有正确列出状态转移方程才能正确地穷举
  • 明确「状态」 -> 定义 dp 数组/函数的含义 -> 明确「选择」-> 明确 base case
  1. 重叠子问题可以理解为重复计算的部分,解决重叠子问题可以通过备忘录和dptable:

①备忘录:
“明确了问题,其实就已经把问题解决了一半。即然耗时的原因是重复计算,那么我们可以造一个「备忘录」”
每次算出某个子问题答案后别急着返回,先记到备忘录中再返回;每次遇到一个子问题先去备忘录查一查,如果之前已经解决过了就直接拿来用,不要重复去计算。
一般使用数组或者哈希表充当备忘录
但带备忘录的递归解法叫做自顶向上,即从上向下延伸,一个规模较大的问题向下逐渐分解规模,直到触底,再逐层返回答案呢
自底向上,是直接从最底下,最简单,问题规模最小开始往上推,直到推到想要的答案,一般动态规划都是自底向上,“这也是为什么动态规划一般都脱离了递归,而是由循环迭代完成计算”

② dp数组的迭代解法:在这张表上完成自底向上的推算

正则表达式匹配

6/100正则表达式匹配
给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。

'.' 匹配任意单个字符
'*' 匹配零个或多个前面的那一个元素

所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。
在这里插入图片描述

递归

单反用到递归的问题,最好都画出递归树,这对分析算法的复杂度,需按照算法是否低效以及低效的原因都有帮助
递归的算法时间复杂度计算:子问题个数乘以解决一个子问题需要的时间

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

广州华锐视点:VR仿真实训室中控系统成为VR课堂教学必备工具

随着科技的不断发展,虚拟现实(VR)技术已经逐渐走进我们的生活。从游戏娱乐到医疗教育,VR技术的应用范围日益广泛。近年来,VR技术在教育领域的应用也取得了显著的成果,为提高教育质量和培养创新人才提供了全…

【Linux】less 命令使用

less命令 less 与 more 类似。 less是一个非常常用的文本查看工具,它可以用于查看任意大小的文本文件,支持滚动翻页、搜索、标记等功能。在本文中,我们将详细介绍less命令的用法、参数和实例,并对其背后的原理和相关技术进行简要…

Spring 的设计思想、创建和使用、Bean 作用域和生命周期

文章目录 Spring 设计思想Spring 是什么?什么是 IoC? Spring 创建和使用创建 Spring 项目注册 Bean 对象获取并使用 Bean 对象 Spring 更方便地存储和读取对象配置文件使用注解使用类注解使用方法注解 获取 Bean 对象属性注入Setter 注入构造方法注入Res…

ORACLE数据库实验总集 实验二 Oracle数据库逻辑存储结构管理

一、实验目的 (1)掌握 Oracle数据库表空间的管理 (2)掌握数据库表空间不同状态时对数据操作的影响。 二、实验要求 (1)分别创建永久性表空间、临时性表空间、撤销表空间 (2)完成表…

Vue--第六天

vuex概述: 组件通信感觉有点白雪。。。。。。。。。。 创建项目: 为了学习简介,先选几个,后续是要勾选很多的 建好后再进行组件导入 创建空仓库: 使用: 上面是store访问,下面是辅助函数的方式…

2023年个人工作总结怎么写?工作任务完成自动记录的待办软件

2023年已经接近尾声,不少人已经开始期待新的一年到来了。不过对于大多数职场人士来说,最近还有一项让人头疼的任务需要完成,这就是撰写2023年个人工作总结。 那么年度个人工作总结怎么写呢?其实很简单,年度工作总结一…

5、RocketMQ-Producer生成消息过程 (五)

生产者已经被启动了,接下来我们就得研究研究如何去发送消息给Broker。 前面分析Producer的启动逻辑,启动完成之后就是发消息,接下来我们就来分析Producer的send消息过程,同时发消息过程中存在一些问题以及解决方法也得考虑。 查…

Java POI读写Excel文档

Java POI读写Excel文档 简介 由apache公司提供Java编写的免费开源的跨平台的Java API提供API给Java程序对Microsoft Office格式档案读和写的功能 包结构 HSSF读写Microsoft Excel XLS(2003版本的Excel)XSSF读写Microsoft Excel OOXML XLSXHWPF读写Microsoft Word DocHSLF提…

Honeywell PM43 loadfile.lp RCE漏洞复现(CVE-2023-3710)

0x01 产品简介 Honeywell PM43 是美国霍尼韦尔(Honeywell)公司的一款打印机产品。 0x02 漏洞概述 Honeywell PM43 P10.19.050004之前版本存在输入验证错误漏洞,攻击者可通过该漏洞在服务器端任意执行代码,写入后门,获…

行云海CMS SQL注入漏洞复现

0x01 产品简介 行云海cms是完全开源的一套CMS内容管理系统,简洁,易用,安全,稳定,免费。 0x02 漏洞概述 行云海cms中ThinkPHP在处理order by排序时可利用key构造SQL语句进行注入,LtController.class.php中发现传入了orderby未进行过滤导致sql注入。攻击者除了可以利用 SQL 注入…

关于 Python 的最全面试题

1 Python的函数参数传递 看两个例子: a 1 def fun(a):a 2 print a # 1a [] def fun(a):a.append(1) print a # [1]所有的变量都可以理解是内存中一个对象的“引用”,或者,也可以看似c中void*的感觉。 这里记住的是类型是属于对象的,而…

Python使用netmiko配置华为交换机

一、netmiko介绍 1.更适合网络设备的自动化运维模块。 二、场景 1、批量查询 2、批量配置变更、备份 三、项目地址 GitHub - ktbyers/netmiko: Multi-vendor library to simplify Paramiko SSH connections to network devices 三、使用步骤 1.安装netmiko pip install ne…

【带头学C++】----- 九、类和对象 ---- 9.5 初始化列表

目录 9.5 初始化列表 9.5.1 对象成员 代码: 9.5.2 初始化列表 9.5 初始化列表 9.5.1 对象成员 在类中定义的数据成员一般都是基本的数据类型。但是类中的成员也可以是对象,叫做对象成员。 先调用对象成员的构造函数,再调用本身的构造函数…

几句对话就能生成简历?“搜索界奥林匹克”上演AI原生应用开发热潮

只需要回答几个问题,就能生成个性化的简历,还提供优化建议,安排AI模拟面试。这样的效率神器,就出现第二届百度搜索创新大赛的赛场上。 来自南京航空航天大学的“肝到凌晨”团队,利用文心一言插件平台“灵境矩阵”和百度…

C语言为什么不建议把变量作为数组长度?

C语言为什么不建议把变量作为数组长度? 在开始前我有一些资料,是我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「C语言从专业入门到高级教程工具包」,点个关注,全部无偿共享给大家!&…

Postman 脚本的奥秘:JavaScript 的内置对象和方法

postman的前后置脚本中是完全支持 JavaScript 编写代码,JavaScript 有很多内置的对象和方法,可以帮助我们完成各种任务,比如生成随机数和测试响应数据 生成随机数 使用Math.random()方法来生成一个 0 到 1 之间的随机小数,比如&…

Mysql 行转列,把逗号分隔的字段拆分成多行

目录 效果如下源数据变更后的数据 方法第一种示例SQL和业务结合在一起使用 第二种示例SQL和业务结合在一起使用 结论 效果如下 源数据 变更后的数据 方法 第一种 先执行下面的SQL,看不看能不能执行,如果有结果,代表数据库版本是可以的&…

Web端功能测试的测试方向有哪些?

一、功能测试 1.1链接测试 链接是web应用系统的一个很重要的特征,主要是用于页面之间切换跳转,指导用户去一些不知道地址的页面的主要手段,链接测试一般关注三点: 1)链接是否按照既定指示那样,确实链接到…

ISIS配置以及详解

作者简介:大家好,我是Asshebaby,热爱网工,有网络方面不懂的可以加我一起探讨 :1125069544 个人主页:Asshebaby博客 当前专栏: 网络HCIP内容 特色专栏: 常见的项目配置 本文内容&am…

09、pytest多种调用方式

官方用例 # content of myivoke.py import sys import pytestclass MyPlugin:def pytest_sessionfinish(self):print("*** test run reporting finishing")if __name__ "__main__":sys.exit(pytest.main(["-qq"],plugins[MyPlugin()]))# conte…
最新文章