我自己给算法的分类有这么几种
- 数据结构类的
- 数组 : 变种太多
- 二维数组
- 堆
- 栈
- 队列
- HashMap
- 树
- 链表
- 其他:trie,跳表,并查集, LRU, 栈变堆堆变栈
- 图论算法
- 字符串匹配
-
算法类的
- 枚举(一开始居然忘了这么重要的东西)
- 搜索算法
- DFS
- BFS
- 回溯
- 贪心
- 动态规划
-
解题模板
- 滑动窗口
- 双指针
- 二叉搜索
-
进阶技巧
- Kadane
- 投票算法
- 位运算
- 特殊题解 (需要很强的观察能力)
- 数学相关的
- 正则表达式
-
基础能力
- 问问题能力
- debug能力
- 分析算法复杂度的能力
- 给出暴力解法的能力
- 说清楚自己思路的能力
经典题型