数据结构与算法重点知识汇总:
- 排序算法:快排、归并排序、计数排序
- 搜素算法:回溯、递归、剪枝技巧、深度优先遍历,广度优先遍历
- 图论:最短路径、最小生成树
- 动态规划:背包问题、最长子序列、计数问题
- 基础技巧:分治、二分、贪心
- 数组和链表
- 栈和队列
- 二叉树、二叉搜索数、avl树,红黑树
- 堆:最大堆,最小堆
- 字符串:前缀树(字典树),后缀树
- 图
- 多刷题、有技巧的刷题
- 第一遍根据 tag 刷题(数组类型、链表类型),不死磕题,学习解题技巧
- 第二遍一题多解(暴力 -> 有技巧,空间/时间复杂:高 -> 低),
- 多题同解,等到普遍的解题思路
- 普遍的解题思路汇总
- 先用暴力的方法解题得到答案
- 确定一些边界条件
- 有序数组可以考虑二分查找
- 双指针解法(对撞指针, 快慢指针)
- 滑动窗口解法
- 回溯、分治、贪心、动态规划