⬅ 返回 1、基础算法 容器STL 差分(前缀和的逆运算) 双指针 位运算 离散化 区间合并 单链表 2、数据结构 双链表 单调栈 单调队列 Trie 并查集 堆(以大根堆为例) 哈希表 字符串哈希 表达式求值 3、搜索与图论 DFS深度优先搜索(递归)通常对位置递归而不是元素 n-皇后问题 BFS广度优先搜索(队列) 八数码 BFS扩展 存储字符串 BFS解决边长为1的单源最短路径 dijkstra 基于贪心 bellman-ford 有边数限制的最短路只能用bellman_ford spfa 某个点的距离被更新了,就把它加到队列中,去更新其它点 spfa判断负环 Floyd 最短路问题总结 prim算法求最小生成树(贪心) krusal算法求最小生成树(贪心) 4、动态规划 背包问题 📌 状态转移方程 01背包问题 完全背包 多重背包 分组背包 线性DP 数字三角形 最长上升子序列 最长公共子序列 5、贪心 区间选点 区间分组 6、数学知识 质数 分解质因数 约数 快速幂