思想
最大误区:做题只做一遍,至少做5遍
思想:
- 空间换时间
- 升维
数据结构
数组、链表、跳表
一、跳表
1 | // 跳表 |
题目:移动零、
盛水最多的容器:左右夹逼的方法
爬楼梯问题:找最近重复子问题(fibonacci数列)
三数之和(a+b=-c)、二数之和(a+b=target):哈希表、双指针左右推进
环形链表:快慢指针
二、双端队列、优先级队列
在工程中不建议使用 stack、queue,直接使用 dequeue 即可。
优先级队列有多种实现,一般的实现是 heap堆、bst、treap
题目:有效的括号:栈
最小栈
柱状图中最大的矩形:栈
滑动窗口:队列