记忆化搜索=搜索的形式+动态规划的思想

记忆化搜索:算法上依然是搜索的流程,但是搜索到的一些解用动态规划的那种思想和模式作一些保存。

一般说来,动态规划总要遍历所有的状态,而搜索可以排除一些无效状态。 更重要的是搜索还可以剪枝,可能剪去大量不必要的状态,因此在空间开销上往往比动态规划要低很多。 记忆化算法在求解的时候还是按着自顶向下的顺序,但是每求解一个状态,就将它的解保存下来, 以后再次遇到这个状态的时候,就不必重新求解了。

这种方法综合了搜索和动态规划两方面的优点,因而还是很有实用价值的。

虽然不能使用传统意义上的动态规划解决本题,但动态规划的思想仍然能起到作用。搜索相对于动态规划最大的劣势无非就是重复计算子结构,所以我们在搜索的过程中,对于每一个子结构只计算一次,之后保存到数组里,以后要用到的时候直接调用就可以了,这就是我要介绍的记忆化搜索。

记忆化搜索的实质是动态规划,效率也和动态规划接近,形式是搜索,简单直观,代码也容易编写,不需要进行什么拓扑排序了。 可以归纳为:记忆化搜索=搜索的形式+动态规划的思想

转载于:https://www.cnblogs.com/tangcong/archive/2011/04/20/2021742.html

记忆化搜索=搜索的形式+动态规划的思想(来自百度百科)相关推荐

  1. Google+内幕:搜索巨人的社交网络努力【来自百度百科】

    今天,世界上最大的搜索公司 Google 正式发起自己在社交网络领域的又一次重要攻势.此次发布的产品名为 Google+,观察者们可能会怀疑它不过是这家在社交网络一直没摸到门道的公司的又一次无谓努力. ...

  2. HDU 2653 (记忆化BFS搜索+优先队列)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2653 题目大意:迷宫中有普通点和陷阱.其中普通点可以走可以飞,但是陷阱只能飞.走耗时1,飞耗时2.但 ...

  3. J. Xingqiu‘s Joke(2021ICPC-南京)(记忆化搜索 + 数论)

    The 2021 ICPC Asia Nanjing Regional Contest Problem 给出两个long long范围内的整数a和b(不相等),每次操作可以对a和b进行以下三个操作之一 ...

  4. 爬楼梯与路径类题目记忆化递归与动态规划双解法(Leetcode题解-Python语言)

    70. 爬楼梯(剑指 Offer 10- II. 青蛙跳台阶问题) 递归(英语:Recursion),是指在函数的定义中使用函数自身的方法.有意义的递归通常会把问题分解成规模缩小的同类子问题,当子问题 ...

  5. 【BZOJ1048】分割矩阵(记忆化搜索,动态规划)

    [BZOJ1048]分割矩阵(记忆化搜索,动态规划) 题面 BZOJ 洛谷 题解 一个很简单的\(dp\),写成记忆化搜索的形式的挺不错的. #include<iostream> #inc ...

  6. 动态规划5:动态规划与记忆化搜索

    本期题目: 单词拆分 单词拆分II 大礼包 记忆化搜索与狭义的动态规划 前面我们讲的动态规划很广义的思想,从起始时刻到终止时刻,每一步都要按照最优原则走,按照这个原则会产生一个迭代式,称为动态规划迭代 ...

  7. 动态规划:记忆化搜索

    记忆化搜索和递推都是为了解决子问题重复计算而产生的 虽然动态规划的转移图是一个DAG,但是一个状态可以被其他的状态复用多次 因此为了提高动态规划的效率,记忆化搜索便产生了 但是有时候,状态转移图是不容 ...

  8. [蓝桥杯]算法提高 第二点五个不高兴的小明(记忆化搜索||动态规划)

    问题描述 有一条长为n的走廊,小明站在走廊的一端,每次可以跳过不超过p格,每格都有一个权值wi. 小明要从一端跳到另一端,不能回跳,正好跳t次,请问他跳过的方格的权值和最大是多少? 输入格式 输入的第 ...

  9. [Leetcode][第322题][JAVA][零钱兑换][回溯][记忆化搜索][动态规划]

    [问题描述][中等] [解答思路] 1. 递归(超时) class Solution {int res = Integer.MAX_VALUE;public int coinChange(int[] ...

最新文章

  1. SAP WM初阶TO单据里的Source Destination 存储类型和货架
  2. java多线程学习三
  3. 当 “HTTP” 先生遇上“S”小姐
  4. 趣链 BitXHub跨链平台 (3)跨链交易流程
  5. 也谈谈:《设计师如何掌握主动权》读后感
  6. Teams Developer Portal介绍
  7. POJ2115-C Looooops【扩欧,同余】
  8. android viewflipper图片轮播,android开发:ViewFlipper实现图片轮播
  9. 分库分表学习总结(2)——数据库中间件MyCat学习总结之MyCat-Web原理介绍
  10. googel的扩展插件导出与导入
  11. 【毕设狗】【单片机毕业设计】基于单片机的空气质量检测-实物设计
  12. pe分区助手读不到Linux硬盘,解决WINPE下不显示硬盘的方法
  13. 有效缓解眼疲劳的绿色桌面
  14. WPF 自定义分页控件TextBox分页页数只输入数字验证
  15. LeetCode刷题复盘笔记—一文搞懂509. 斐波那契数70. 爬楼梯以及递归时间复杂度计算方法(动态规划系列第一篇)
  16. 高通MSM8998 ABL的调试
  17. matlab音乐实训心得,matlab实训心得体会
  18. 申请签证时工作单位证明英文摸版
  19. 删除下拉框只找23火星软件_下拉词删除就找23火星
  20. AI将带我们去何方?(上-前言篇)

热门文章

  1. vue ---- vue简介
  2. php getlastid,PHP-获取最后一个插入ID
  3. rabbitmq消息的序列化与反序列化
  4. 用FastDFS一步步搭建文件管理系统
  5. App工程从Eclipse迁移到Android Studio的问题总结
  6. Android开发笔记(一百一十五)设计工具
  7. Oracle递归查询,Oracle START WITH……CONNECT BY查询
  8. HTML的iframe标签的滚动条
  9. 组策略之文件夹的重定向
  10. xdebug断点调试原理