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

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

    大体有3个:看转化

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

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

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

               辅助数组,辅助矩阵

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

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

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

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

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

  • 相关阅读:
    struts2 上传文件
    Struts2文件下载
    关于maven:调整你的maven的jdk版本为 xxxx
    倒计时显示
    [JSP] c:forEach 如何输出序号
    BaseServlet 继承 httpServlet
    验证码
    Javascript中Base64编码解码的使用实例
    五、javaScript基础&DOM(二)
    四、javaScript基础&DOM(一)
  • 原文地址:https://www.cnblogs.com/zhangbo2008/p/9236929.html
Copyright © 2011-2022 走看看