算法基础

那些经典的数据结构,你不会都没实现过吧?

那些经典的基础算法,你不会都没实现过吧?

要达到随时能够行云流水地写出来的程度,必须掌握的算法基础请见:傲视群雄的算法基础

算法而已

算法是用来解决问题的计算机执行步骤。不过,在此之前需要打好计算机思维,还是先刷题吧。

刷题目标

LeetCode上的题型大约有70种,在2022-04-10号统计,简单题700,中等题1400,困难550左右,之后每天增加1道。

不过,这近2600道题全部完成不太必要,每一类题按比例和熟练程度完成4成,大约一千道题。

根据SMART原则:

  1. Specific:能够快速实现95%以上的中等难度题
  2. Measurable:3个可测量点
    • 数量:各类题型按比例刷题1000道以上
    • 质量:做过的题可以随时分析和实现,能给别人讲懂;同类型的变体题也没问题
    • 速度:根据题目代码量不同,每道题最多花15分钟写出来要能AC
  3. Achievable: 每天最多花1个小时,能够做到
  4. Relevant: 和大目标(用计算机解决实际的跨界问题)相吻合
  5. Time-bound: 限制3年

刷题计划

  • 计划是每天至少一道题,一个月总结一次。
  • 最晚完成时间3年后。
  • 如果中途发现能力得到很大提升(中等题95%都没问题),那么可以提前中止。

刷题进度

我会实时统计进度,每个月更新一次。