作为程序员必修的四门大课之一的《算法与数据结构》最近由于疫情的影响,越来越成为公司面试必考的部分之一,出于对面试或者写出严谨健壮的逻辑需要,我们都有必要把这一块补上来。下面以极客时间课程《算法与数据结构之美》为参考,给出这块的知识结构图:

其中左侧是数据结构部分为数据结构,右侧是算法。事实上要从无到有并掌握这么多的算法是非常困难的,也是不太必要的,因为其中相当一部分不经应用的少而且很难实现。而下面这张图分阶段规划的则更具有参考价值
接下来的题解博客的将只会考虑上图中重要程度不低于8分部分。
作为不同题解的入口,下表列出了7种数据结构和7种算法,以表格形势给出博客文档中LeetCode题名和跳转链接。博客文档在总结形成思路后会进行不定期更新。虽然算法离不开数据结构,但是数据结构可以对应一些”不成名” 的算法,因此最后给出了一列分析题解,这一列中的算法题的解法可能并没有一个说的上名字的算法,但是却是需要经过严谨仔细分析才能解决的问题,如此规划,题解数需要有7*8才能填满表格,希望能坚持下来! | | 二分查找 | 递归 | 搜索算法 | 分治算法 | 贪心算法 | 动态规划 | 回溯算法 | 分析解题 | | —- | —- | —- | —- | —- | —- | —- | —- | —- | | 数组 | 287重复数 | | | | | 1143.最长公共子序列 | | 134.加油站 | | 链表 | | | | | | | | 142 环形链表II | | 栈 | | | | | | | | | | 队列 | | | | | | | | | | 二叉树 | | | | | | | | | | 堆 | | | | | | | | | | 散列 | | | | | | | | 146.LRU |
