参考知乎大神帖,在此表示感谢分享!详细回答,见以下链接。我这里只是做些笔记,方便复习。
https://www.zhihu.com/question/36738189/answer/908664455
类别:
1. Pattern: Sliding window,滑动窗口类型
2. Pattern: two points, 双指针类型
3. Pattern: Fast & Slow pointers, 快慢指针类型
4. Pattern: Merge Intervals,区间合并类型
5. Pattern: Cyclic Sort,循环排序
6. Pattern: In-place Reversal of a LinkedList,链表翻转
7. Pattern: Tree Breadth First Search,树上的BFS
8. Pattern: Tree Depth First Search,树上的DFS
9. Pattern: Two Heaps,双堆类型
10. Pattern: Subsets,子集类型,一般都是使用多重DFS
11. Pattern: Modified Binary Search,改造过的二分
12. Pattern: Top ‘K’ Elements,前K个系列
13. Pattern: K-way merge,多路归并
14. Pattern: 0/1 Knapsack (Dynamic Programming),0/1背包类型
15. Pattern: Topological Sort (Graph),拓扑排序类型
第二门则是单独将动态规划(DP)的题目进行了细分。
1. 0/1 Knapsack, 0/1背包,6个题
2. Unbounded Knapsack,无限背包,5个题
3. Fibonacci Numbers,斐波那契数列,6个题
4. Palindromic Subsequence,回文子系列,5个题
5. Longest Common Substring,最长子字符串系列,13个题