• 动态规划小结


    动态规划的思维其实就是递推的思维,而记忆型递归擅长解决重叠子问题不重复求解。

    动态规划用于解决多阶段决策最优化问题
      三要素:阶段 状态 决策。
      两个条件:最优子结构(最优化原理),无后效性:当前状态是前面状态的完美总结

    动规解题的一般思路:

      是否可以用动态规划,否则用搜索。
      模型匹配:多做经典题目,掌握经典模型。
        一维:上升子序列模型,背包模型。
        二维:最长公共子序列问题。
      寻找规律:规模由大到小,或者由小到大,做逐步分析。
      放宽条件或增加条件。

    动规解题的一般过程:

      找到过程演变中变化的量(状态),以及变化的规律(状态转移方程)。
      确定一些初始状态,通常需要dp数组来保存。
      利用状态转移方程,推出最终答案。

    动规解题的解法:

      自顶向下,递归。如果有重叠子问题,带备忘录。
      自底向上,递推。

    贪心算法和动态规划:

      可以用局部最优解来推导全局最优解,即动态规划。
      贪心:这一阶段的解,由上一阶段直接推导出。
      动态规划:当前问题的最优解,不能从上一阶段子问题简单得出,需要前面多阶段多层子问题共同计算出,因此需要保留历史上求解过的子问题及其最优解。

  • 相关阅读:
    四则运算
    实验四 决策树算法及应用
    实验三 朴素贝叶斯算法及应用
    实验二 K-近邻算法及应用
    实验三 面向对象分析与设计
    实验二 结构化分析与设计
    实验一 软件开发文档与工具的安装与使用
    ATM管理系统
    流程图与活动图的区别与联系
    四则运算自动生成程序
  • 原文地址:https://www.cnblogs.com/xiaoyh/p/10371384.html
Copyright © 2020-2023  润新知