算法基础
基础算法
- 排序:快速排序、归并排序、计数排序
- 二分:整数二分、浮点数二分
- 高精度:加、减、乘、除、取模
- 前缀和与差分:一维、二维
- 双指针算法:快慢指针、左右指针
- 位运算:与、或、异或、左移、右移
- 离散化:数值映射
- 区间合并
数据结构
- 链表与邻接表:图的存储
- 栈与队列:单调队列、单调栈
- KMP:字符串匹配
- Trie:字典树
- 并查集:集合合并与查询
- 堆:优先队列
- Hash表:哈希表
搜索与图论
- DFS与BFS:图的遍历
- 树与图的遍历:先序、中序、后序、层序遍历
- 拓扑排序:有向无环图的排序
- 最短路:Dijkstra、Bellman-Ford、Floyd-Warshall
- 最小生成树:Prim、Kruskal
- 二分图:染色法、匈牙利算法
数学知识
- 质数:判断质数、筛选质数
- 约数:求约数个数、求约数之和
- 欧拉函数:求欧拉函数值
- 快速幂:快速计算幂次
- 扩展欧几里得算法:求解不定方程
- 中国剩余定理:求解模线性方程组
- 高斯消元:求解线性方程组
- 组合计数:排列组合、卡特兰数
- 容斥原理:计数问题
- 简单博弈论:Nim游戏
- 动态规划:背包问题、线性DP、区间DP、计数类DP、数位统计DP、状态压缩DP、树形DP、记忆化搜索
- 贪心
暂无评论