跳到主要内容

经典算法

经典算法是解决常见问题的一组稳定方法。学习经典算法的目的不是背模板,而是掌握问题拆解方式:如何建模、如何选择数据结构、如何分析复杂度。

学习重点

  • 排序和查找;
  • 递归和分治;
  • 回溯和剪枝;
  • 贪心;
  • 动态规划;
  • 图算法;
  • 字符串匹配;
  • 概率型数据结构。

推荐路线

练习方法

  • 每个算法先手算一个小例子。
  • 再写伪代码。
  • 最后实现代码并分析复杂度。
  • 做完题后整理“适用条件”和“容易错的边界”。