OI省选算法汇总( 转发黄学长博客 )
[原文链接]
注 : 蓝色为已学习算法 , 绿色为不熟练算法 , 灰色为未学习算法
1.1 基本数据结构
1. 数组
2. 链表,双向链表
3. 队列,单调队列,双端队列
4. 栈,单调栈
1.2 中级数据结构
1. 堆
2. 并查集与带权并查集
3. hash 表
自然溢出
双hash
1.3 高级数据结构
1. 树状数组
2. 线段树,线段树合并
3. 平衡树
Treap 随机平衡二叉树
Splay 伸展树
* Scapegoat Tree 替罪羊树
4. 块状数组,块状链表
5.* 树套树
线段树套线段树
线段树套平衡树
* 平衡树套线段树
6.可并堆
左偏树
*配对堆
7. *KDtree,*四分树
1.4 可持久化数据结构
1. 可持久化线段树
主席树
2. * 可持久化平衡树
3. * 可持久化块状数组
1.5 字符串相关算法及数据结构
1. KMP
2. AC 自动机
3. 后缀数组
4. *后缀树
5. *后缀自动机
6. 字典树 Trie
7. manacher
1.6 图论相关
1. 最小生成树
prim
kruskal
2. 最短路,次短路,K短路
spfa
dijkstra
floyd
3. 图的连通
连通分量
割点,割边
4. 网络流
最大流
最小割
费用流
分数规划
5. 树相关
树上倍增,公共祖先
树链剖分
树的分治算法(点分治,边分治,*动态?树分治)
动态树 (LCT,*树分块)
虚树
*prufer编码
7. 拓扑排序
8. 欧拉图
9. 二分图
*KM算法
匈牙利算法
1.7 数学相关
1. (扩展)欧几里得算法,筛法,快速幂
斐蜀定理
更相减损术
2. 欧拉函数与*降幂大法
3. 费马小定理
4. 排列组合
lucas定理
5. 乘法逆元
6. 矩阵乘法
7. 数学期望与概率
8. 博弈论
sg函数
树上删边游戏
9. *拉格朗日乘子法
10. 中国剩余定理
11. 线性规划与网络流
12. 单纯型线性规划
13. 辛普森积分
14. 模线性方程组
15. 容斥原理与莫比乌斯反演
16. 置换群
17. 快速傅里叶变换
18. *大步小步法(BSGS),扩展BSGS
1.8 动态规划
1. 一般,背包,状压,区间,环形,树形,数位动态规划
记忆化搜索
斯坦纳树
背包九讲
2. 斜率优化与* 四边形不等式优化
3. 环 + 外向树上的动态规划
4. *插头动态规划
1.9 计算几何
1. 计算几何基础
2. 三维计算几何初步
3. *梯形剖分与*三角形剖分
4. 旋转卡壳
5. 半平面交
6. pick定理
7. 扫描线
1.10 搜索相关
1. bfs,dfs
2. A* 算法
3. 迭代加深搜索,双向广搜
1.11 特殊算法
1. 莫队算法,*树上莫队
2. 模拟退火
3. 爬山算法
4. 随机增量法
1.12 其它重要工具与方法
1.模拟与贪心
2. 二分,三分法(求偏导)
3. 分治,CDQ分治
4. 高精度
5. 离线
6. ST表
1.13 STL
1. map
2. priority_queue
3. set
4. bitset
5. rope
1.14 非常见算法
1. *朱刘算法
2. *弦图与区间图
OI省选算法汇总( 转发黄学长博客 )的更多相关文章
- OI省选算法汇总
copy from hzwer @http://hzwer.com/1234.html 侵删 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 ...
- ORZ hzwer——OI省选算法汇总
简单列了一点 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 1.2 中级数据结构 1. 堆 2. 并查集与带权并查集 3. hash 表 自 ...
- [转载]OI省选算法汇总
简单列了一点 1.1 基本数据结构 数组 链表,双向链表 队列,单调队列,双端队列 栈,单调栈 1.2 中级数据结构 堆 并查集与带权并查集 hash 表 自然溢出 双hash 1.3 高级数据结构 ...
- OI省选算法汇总及学习计划(转)
1.1 基本数据结构 数组(√) 链表(√),双向链表(√) 队列(√),单调队列(√),双端队列(√) 栈(√),单调栈(√) 1.2 中级数据结构 堆(√) 并查集与带权并查集(√) hash 表 ...
- git入门笔记汇总——(廖雪峰博客git入门)
本文内容是对廖雪峰老师Git教程做的笔记,外加一些自己的学习心得,还抱着学以致用的心态来实践一番 如有显示错误 请移步本人github:git教程小结 Git学习笔记 Git简介 安装Git 创建版本 ...
- Beta冲刺博客汇总(校园帮-追光的人)
所属课程 软件工程1916 作业要求 Beta冲刺博客汇总 团队名称 追光的人 作业目标 汇总Beta阶段的博客,方便查看 冲刺日志 Beta之前-凡事预则立(校园帮-追光的人)5-22 Beta冲刺 ...
- 排序算法汇总(C/C++实现)
前言: 本人自接触算法近2年以来,在不断学习中越多地发觉各种算法中的美妙.之所以在这方面过多的投入,主要还是基于自身对高级程序设计的热爱,对数学的沉迷.回想一下,先后也曾参加过ACM大大小小的 ...
- 黄学长模拟day1 某种密码
关于某种密码有如下描述:某种密码的原文A是由N个数字组成,而密文B是一个长度为N的01数串,原文和密文的关联在于一个钥匙码KEY.若KEY=∑▒[Ai*Bi],则密文就是原文的一组合法密码. 现在有原 ...
- 七内部排序算法汇总(插入排序、Shell排序、冒泡排序、请选择类别、、高速分拣合并排序、堆排序)
写在前面: 排序是计算机程序设计中的一种重要操作,它的功能是将一个数据元素的随意序列,又一次排列成一个按keyword有序的序列.因此排序掌握各种排序算法很重要. 对以下介绍的各个排序,我们假定全部排 ...
随机推荐
- double,long double及各变量数组内存开销
IEEE754浮点数的表示方法.C语言里对float类型数据的表示范围为-3.4*10^38-+3.4*10^38.double为-1.7*10^-308~1.7*10^308,long double ...
- MATLAB循环结构:for语句+定积分实例
for语句 格式: for 循环变量=表达式1:表达式2:表达式3 循环体语句 end 表达式1:循环变量初值:表达式2:步长:表达式3:循环变量终值. for 循环变量=矩阵表达式 循环体语句 en ...
- hdu 3549 Flow Problem【最大流增广路入门模板题】
题目:http://acm.hdu.edu.cn/showproblem.php?pid=3549 Flow Problem Time Limit: 5000/5000 MS (Java/Others ...
- Android环境搭建 NDK+ADT(免cywgin)
JDK下载: 1下载地址 http://www.oracle.com/technetwork/java/javase/downloads/index.html 2配置环境变量 JAVA_HOME:创 ...
- mysql 5.5 安装配置方法图文教程(转发)
MySQL下载地址:http://dev.mysql.com/downloads/installer/ 1.首先进入的是安装引导界面 2.然后进入的是类型选择界面,这里有3个类型:Typical(典型 ...
- 根据UI找对应的j s 脚本
1.页面内容的脚本 2.页面外部脚本 3.根据UI找j s 脚本
- wap网站即手机端网页SEO优化注意事项及方法
定位和页面设计: 无论是PC端还是移动端,网站 都要考虑清楚消费群体的定位问题.虽然智能手机用户数量非常普及,但是要明白中国的大部分手机用户使用的还是2G网络,一直高 喊的3G.4G手机用户只有大约1 ...
- HDU - 1033 Edge 【模拟】
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1033 题意 给定一个起始点 300 420 走的第一步是 310 420 下面的每一步 都由 输入决定 ...
- Linux服务器上的tomcat中部署web项目
首先了解一下下面几个概念,讲得不太准确:1.JVMJVM是class以及jar(实际上就是很多个class压缩在一起)的运行环境,特征就是java和javaw命令,通过这两个命令,你可以执行class ...
- static{}块的作用
本文转载自: https://www.cnblogs.com/caolaoshi/p/7824748.html static{}块,会且仅会在类被加载时执行一次,多用于定义静态变量或执行静态方法. 什 ...