写在前面:
因为博主的技术有限,算法也是很难得一门科学,我只能给出尽量全的分类,然后尽可能的讲解。
但是有些算法超出了本人的能力范畴,说实在的就是我太菜了。所以大家就当本文是目录型的文章即可。
本人是退役ACMer选手,因为自己太菜,所以选择退出,别去丢人了。
1.基础算法
- 递归
- 递推
- 分治
- 贪心
- 二分
- 回溯搜索
2.动态规划
- 揹包
- 线性DP
- 区间DP
- 数位DP
- 状态压缩DP
- 树形DP
- 概率/期望DP
- 插头DP
图论
- BFS DFS
- 最短路
- 第K短路
- 最小生成树(森林)
- 次小生成树
- 曼哈顿最小生成树
- 最短路径生成树
- 欧拉路径
- 拓扑排序
- 最小树形图
- 生成树计数
- 树的重心
- DAG的深度优先搜索标记
- 图的割点、桥和双连通分支的基本概念
- LCA
- 无向图找桥
- 无向图连通度(割)
- 最大团问题
- 一般图匹配带花树
- 有向图的强连通分量
- Tarjan强连通分量
- 弦图判断
- 弦图的Perfect Elimination点排列
- 稳定婚姻问题
- 双连通分支
- 无向图连通分支
- 有向图强连通分支
- 有向图最小点基
- Floyd求最小环
- 2-SAT
数据结构:
- Splay树
- 划分树
- 左偏树
- 线段树
- 树链剖分
- 动态树
- 主席树
- Trie树
- RMQ
- 二分查找
- 树状数组
- 滚动数组
- 逆序数
- 带权值的并查集
- Chtholly Tree (珂朵莉树) ODT
- SBT算法
- AVL树
- 替罪羊树
数学:
一、组合数学:
- Polya定理、burnside定理
- 置换,置换的运算
- 排列组合,区间计数,计数序列
- 鸽笼原理、容斥原理
- 递推关系
- 母函数
- 莫比乌斯反演
- 偏序关系理论
二、数论.
- 素数与整除问题
- 进制位.
- 同余模运算.
- 欧拉函数
三、计算方法
- 二分法求解单调函数相关知识.
- 三分法求解单峰(单谷)的极值.
- 0/1分数规划.
- 矩阵法
- 随机化算法
- 迭代逼近
四、计算几何
- 叉积和点积的运用(如线段相交的判定,点到线段的距离等).
- 多边型的简单算法(求面积)和相关判定(点在多边型内,多边型是否相交)
- 二维、三维凸包
- 扫描线算法(例如求矩形的面积和周长并,常和线段树或堆一起使用).
- 半平面求交
- 点集最小圆覆盖.
- 对踵点(最远点对)
五、博弈论
- 巴什博奕(BashGame)
- 威佐夫博奕(WythoffGame)
- 尼姆博奕(NimmGame)
- 组合博弈
六、其他数学
- 高斯消元法
- 概率问题.
- GCD、扩展的欧几里德(中国剩余定理)
- 高次同余方程
- 矩阵变换
写在最后:
我叫风骨散人,名字的意思是我多想可以不低头的自由生活,可现实却不是这样。家境贫寒,总得向这个世界低头,所以我一直在奋斗,想改变我的命运给亲人好的生活,希望同样被生活绑架的你可以通过自己的努力改变现状,深知成年人的世界里没有容易二字。目前是一名在校大学生,预计考研,热爱编程,热爱技术,喜欢分享,知识无界,希望我的分享可以帮到你!
如果有什么想看的,可以私信我,如果在能力范围内,我会发布相应的博文!
感谢大家的阅读!😘你的点赞、收藏、关注是对我最大的鼓励!