关于刷题

  1. 刷题的目的

    1. 编程能力
    2. 掌握到熟练数据结构与经典算法
    3. 从总结解题思路到沉淀算法思想
  2. 有效训练

    1. 刷题分为个步骤 分析 , 编码,调试 ,总结,应该把时间放在分析与总结上。
    2. 分析要保持专注,大脑不要空转,抱着一遍AC的心态去分析,给自己规定一个时间,过了时间还解不出来就看解析或者放一放。
    3. 根据分析的结果先实现再优化代码结构。
    4. 如果AC此步忽略,如果不能,根据反馈去调,是代码错误还是思路错误,如果调试时间太长要反思了。
    5. 再分析一遍思路,题目的分类,解题的关键,用的数据结构,算法思想,如果没做出来,要想想为什么没做出来。
  3. 解题经验:

    1. 读完题后,要确保自己能够完全理解题意。然后想一想解题的大方向是什么,贪心,DP,分治还是减治,涉及的数据结构,期间在纸上手算测试样例,看看能不能找到一个循环不变式来描述解题过程。切不可陷入逻辑的死循环中,如果一个不是那么难的题逻辑想的太复杂那么可以肯定必然是错的。
    2. 可以根据给出的数据规模来判断算法的复杂度o(n) ,o(logn),...。

猜你喜欢

转载自blog.csdn.net/qq_38043440/article/details/89287884