其实总体来说题目都是有模式可循的,但是细节上还是要把握把握
思路上无论是什么题基本上都是几种基本思路的变换
数组:多用于元素查找
链表: 快慢指针,指针变动
哈希表:多用于元素查找
字符串: 用two pointer/KMP
栈与队列:配对消消乐/hashmap的辅助排序
二叉树:dfs,bfs
回溯:基本思路就是三步:终止条件,如果遍历(for),以及要不要做valid验证
贪心算法:把当前的问题转化成常见的问题,比如变成状态判断,数字比较等等
Dp: 代表含义->递推公式->初始化->遍历顺序->validate
单调栈: 用来计算data的变化