以下是一些我总结的类型题目,提前搞懂这些东西对之后的做题很有帮助,强烈建议先掌握。另外我的 91 天学算法也对专题进行了更细粒度的整理,具体参见91 天学算法
首先基础的数据结构大家是必须掌握的,其次就是暴力法。暴力法也是算法,只不过我们追求的肯定是性能更好的算法。因此了解暴力法的算法瓶颈以及各种数据结构的特点就很重要, 这样你就可以根据这些知识去一步步逼近最优解。
再之后就是必须掌握的算法。比如搜索算法是必须掌握的,搜索算法的范围很广,但是核心就是搜索的,不同的算法在于搜索的方式不同,典型的就是 BFS 和 DFS,当然二分法本质上也是一种搜索算法。
还有就是暴力优化法也是必须掌握的,和搜索一样,范围很广。 有剪枝, 空间换时间等。 其中空间换时间又有很多,比如哈希表, 前缀树等等。
围绕这个思想去学习, 就不会差太多,其他我就不多说,大家慢慢体会。