zoukankan      html  css  js  c++  java
  • 动态规划经典问题

    只是谈谈看题感悟而已,并没有写题,则跟不用说刷题了。

    在看了算法竞赛入门经典,也就是刘汝佳写的那本(一)中动态规划专题,理会甚多。

    动态规划问题,一般可以看为DAG问题的,有许多类动态规划原来存储的是bool 的true或false只需改一改题意就变成了,什么保证什么什么情况下,什么最大,什么最小的问题,那就只需将bool改为int就可以了

    有一类点集配对问题就是说有n个点,两两配对,使得到的权值总和最大或者最小,一类的问题,数据范围是20的,这样有一个小技,因为最终所有点都是需要配对的,所以第一次枚举的时候只需枚举一个点的情况就可以了,如果用一个一维循环来枚举第一个点的匹配点,已经包涵在任意一个点的匹配中,因此是重复的,可以优化一个n。

    几个小点,LCS中的滚动数组空间优化,最大连续和的O(n)算法,TSP问题是十分经典的一类问题,一般dp也就是和暴力没什么区别,时间复杂度也需要2^n甚至更高,这里启发式搜索就比较厉害了,10^6的数据只需要跑1h就可以跑出了,这个估计函数的选举非常重要,要保证正确率要高。

    矩阵乘法的(MCM)问题一种简单的区间类DP,O(n^3),还有一类(OBST)问题,最优排序二叉树问题,题目是给你一颗排序二叉树,.........。题目不是关键,也是枚举根节点,然后求一次树上DP就可以了

    这里本来的时间复杂度是O(n^3),有什么优化的方法吗?答案是有的,可以用四边形优化来解决,降低一个n,然后就变成了,O(n^2)的复杂度,具体还是去看论文吧,这个讲不太清楚,而且石子合并那里是讲到过的。 

  • 相关阅读:
    vue长按事件
    video标签视频自动播放
    express路由的使用
    Java的堆栈和堆
    MongoDB建库db、建集合collection以及其他常用命令
    计算机网络基础-目录
    如何清除tomcat缓存
    tomcat/logs目录下各日志文件的解析
    在Windows系统和Linux服务器安装MongoDB和基本使用
    [转]/tomcat/conf/server.xml配置文件的源码解析
  • 原文地址:https://www.cnblogs.com/fengzhiyuan/p/7228307.html
Copyright © 2011-2022 走看看