一.dp

动态规划的本质

是一种思想。通过对原问题划分成子问题,寻找子问题之间的联系,通过求解子问题得出原问题的解。与贪心不同的是,动归是深谋远虑,考虑全局最优解;而贪心则目光短浅,只考虑局部最优解。

子问题 对应 状态

子问题之间的联系 对应 状态转移

边界子问题 对应 边界状态(状态转移的边界)

边界子问题:其结果不依赖其他子问题

求解动态规划类题目的要点

定义状态

寻找状态转移方程

边界状态

值得一提的是 动态规划中边界状态是可以由状态定义轻松得出 边界不能忽略。

动态规划的分类

按照常用套路的不同,可以对动态规划进行如下分类:

一维动规

背包动规

区间动规

树形动规

DAG动规


二.搜索

搜索的重点

搜索的实现

剪枝与优化

盲目搜索与启发式搜索

盲目搜索(只是搜索的顺序不同):

深度优先搜索 宽度优先搜索

启发式搜索:

A*算法

dfs

问题

1.深度问题

2.死循环问题

解决方法

1.对深度加以限制

2.记录从初始状态到当前状态的路径

深度优先搜索的性质

一般不能保证找到最优解 当深度限制不合理时,可能找不到解,可以将算法改为可变深度限制

最坏情况时,搜索空间等同于穷举

是一个通用的与问题无关的方法

节省内存,只存储从初始节点到当前节点的路径

bfs

优先扩展深度浅的节点 通常使用一个队列来实现

广度优先搜索的性质

当问题有解时,一定能找到解

当问题为单位耗散值,且问题有解时,一定能找到最优解

方法与问题无关,

效率较低

存储量比较大

迭代加深搜索

解决宽搜内存消耗大和深搜不能保证最优解的问题

分析:

宽搜内存消耗大是由于记录了搜索扩展的节点

深搜不能保证最优解是由于其扩展不是按照代价的顺序扩展的

所以我们需要:

不记录所有扩展节点

按照顺序扩展

解决办法:

枚举最大的代价,用深搜判断是否有解

启发式搜索

在OI中常常也被称为A*搜索

关键在于对当前局面作出预估,判断当前局面到目的局面至少还需要多少步

估价函数:估价函数的好坏决定了A*算法的优劣

转载于:https://www.cnblogs.com/MisakaAzusa/p/8470129.html

学大伟业 Day 2 培训总结相关推荐

  1. 学大伟业 Day 1 培训总结

    第一天培训,讲的基本算法,东西很多.还有些数论,图论,数据结构and some small tricks 一.输入输出技巧 1 //输入输出技巧 2 /* 3 scanf.printf:速度快,需要记 ...

  2. 学大伟业 Day 6 培训总结

    今天接着昨天的继续讲数据结构 今天先是 分块 在统计问题中,尤其是序列问题,经常涉及到区间的操作,比如修改一段区间的元素,询问某个区间的元素的信息. 如果每次都对一整个区间的每一个元素进行操作的话,那 ...

  3. 学大伟业 Day 5 培训总结

    今天讲数据结构 先从mzx大佬的ppt摘抄一段: 数据结构是计算机存储.组织数据的方式.数据结构是指相互之间存在一种或多种特定关系的数据元素的集合. 通常情况下,精心选择的数据结构可以带来更高的运行或 ...

  4. 学大伟业 Day 3 培训总结

    今天讲的字符串: 不多说,直接看题 一.表达式求值 题目大意: 输入一行一个表达式,计算其答案 表达式包含非负整数.加减乘除.括号 两种做法 ·栈 ·表达式树 这里更推荐表达式树,因为栈是先压进去,逆 ...

  5. 学大伟业 Day 4 培训总结

    今天讲的全是dp... 不多废话,先看一道经典的模板LIS(最长不下降子序列) 一.LIS 给定一个长度为N的数列,求最长上升子序列 例:1 7 2 8 3 4 答案:1 2 3 4 代码: 1 #i ...

  6. 学大伟业:学长是如何对待数学竞赛的

    如果你是下定决心要学数竞,真的很认真地做了决定,那么你的自学能力必须要过关,专注度一定要够强.当然,这里的专注度不是指40分钟过去了,才连一条几何辅助线,也不是说60分钟过去了,你才完成了一试的填空题 ...

  7. 学大伟业:在数学竞赛学习中,你属于哪种类型?

    学习数学竞赛,在其他人眼中是一种什么存在,你知道么? 你在学习数学竞赛中属于什么类型的,你自己知道么? 下面几种类型, 赶紧看看自己,中枪了没. 做题狂魔型 这类人的主要特征就是喜欢做题,简直到了一种 ...

  8. 学大伟业:如何利用课余时间学习物理竞赛,搞定自主招生?

    今天撇开能力超强的学生不谈,仅针对目标自主招生的学生,谨慎的给出一些物理竞赛的学习建议. 高一 高中物理竞赛中力学.电磁学模块占据了70%的考试内容,这两个模块也是最难的模块,热学.光学.近代物理内容 ...

  9. 学大伟业Day1解题报告

    学大伟业Day1解题报告 张炳琪 一.   时间分配 T1:30分钟  T2: 60分钟  T3:100分钟 二.答题情况及错因 T1:100         T2:55             T3 ...

最新文章

  1. 解决mysql服务无法启动的问题
  2. java nio技术_攻破JAVA NIO技术壁垒
  3. .net 2.0 制作 柱状图
  4. kettle创建mysql资源库
  5. 3GPP规范命名规则解读
  6. 小米max刷鸿蒙,用了小米Max2,这简直是浪费我一天一夜的时间!
  7. 工商管理专业知识与实务(中级)【4】
  8. 素数筛法(python实现)
  9. 区块链开发入门教程推荐
  10. phpdesigner 的配置
  11. java-php-python-ssm基于智能选课系统的设计与实现计算机毕业设计
  12. Flink SQL xxx is not serializable. The object probably contains or references non serializable field
  13. java-----Map
  14. 360全景拍摄为什么要使用鱼眼镜头,与超广角镜头区别?
  15. 怎么压缩图片大小?建议收藏这些方法
  16. 解决VO类属性与要返回的json串字段名称不一样的问题
  17. 基于Android的时间管理源码,基于安卓的手机时间管理APP系统
  18. label 标签的巧妙使用
  19. 激活神器!KMSpico v10.2.0 正式版本
  20. Translatium for Mac(Google在线翻译工具)

热门文章

  1. 如何使用ContentProvider打造自己的本地图片库
  2. photoshop安装_如何在Photoshop中安装画笔
  3. 变频器的主电路 详解
  4. 【愚公系列】2023年05月 攻防世界-MOBILE(Phishing is not a crime-2)
  5. ns-3 教程 —— 概念概述(第一个 ns-3 程序)
  6. qt学习总结之探索Qt的安装目录结构
  7. 国产手机销量同比大跌超过五成,手机库存货需10个月消化
  8. LeetCode 0699.掉落的方块
  9. unable to load dll 'gdiplus.dll' in docker
  10. 【自然语言处理概述】文本词频分析