zoukankan      html  css  js  c++  java
  • 算法题思路总结

    为了避免思路遗漏给解题照成困难,总结一下思路:

    大体有3个:看转化

    1.直接模拟法:也就是问题自己处理自己,不需要转化.直接按问题跑一边即可.

    2.转化到其他数据结构和运算来进行处理:绝大部分题目都这么想.要实现什么功能,用什么数据结构来实现这个功能,是否能转化到已经处理过的成型套路解法:

       (只要简化后,让问题变得更直白简单一点就可以)

               辅助数组,辅助矩阵

               单调栈,双端队列维护滑动窗口最大值(左神的2个法宝)

               索引堆,堆,队列,双端队列,红黑树,字典,

    3.递归,转化到跟自身相似的子问题.需要最优子结构:

               ●动态规划和贪心法.(需要结合使用,半贪心半动态规划才是最好用的,考虑动态规划时候不要忘了尝试是否能用贪心来加速)

               ●遇到动态规划问题解决不清楚,也就是得不到最优子结构时候,考虑加描述加条件来细化分解得到更高维的动态规划.(牛牛跳跃问题,合并回文子串问题)

  • 相关阅读:
    cloud_config学习_2
    layui的tab和form冲突
    layui+beetl实现三级菜单
    postgreSQL官网教程_管理表、类型
    08、异 常&包
    07、面向对象特征之多态&内部类
    06、面向对象特征之继承
    04、面向对象
    03、数组&内存划分
    02、函数
  • 原文地址:https://www.cnblogs.com/zhangbo2008/p/9236929.html
Copyright © 2011-2022 走看看