数据结构
数据预处理
1、排序
2、去重
注:预处理主要配合其他算法一起使用
DFS - 深度优先遍历
200 、岛屿的数量(DFS+队列queue)
46、组合与排列
BFS - 广度优先遍历
BFS广度优先遍历详解
LCP 56. 信物传送(BFS+双端队列deque)
752. 打开转盘锁
双指针
1)左右指针(二分查找)
核心:包含中心向两边扩散 & 两边向中心集中
二分查找_模板
167. 两数之和 II - 输入有序数组
三数之和(双指针)
2)快慢指针(滑动窗口)
核心:快指针探路,慢指针存储
26. 删除有序数组中的重复项
27. 移除元素
438. 找到字符串中所有字母异位词(滑动窗口)
回溯
核心:1.已选路径 2.可选列表 3.结束条件
回溯算法详解
236. 二叉树的最近公共祖先
树
贪心
位运算
// 二进制数,一般配合哈希表使用; 前缀使用0b
int a = 0b10;
逻辑题
其他
1、包含INT_MIN和INT_MAX的头文件:#inlcude "limits.h"
2、leetcode题目补充
1687(动态规划)
1396 设计地铁系统(基础数据结构)
319 灯泡开关(逻辑题)
2050. 并行课程 III
3、算法学习:labuladong 的算法小抄