OI省选算法汇总及学习计划(转)
1.1 基本数据结构
数组(√)
链表(√),双向链表(√)
队列(√),单调队列(√),双端队列(√)
栈(√),单调栈(√)
1.2 中级数据结构
堆(√)
并查集与带权并查集(√)
hash 表(√)
自然溢出
双hash
1.3 高级数据结构
树状数组(√)
线段树(√),线段树合并
平衡树
Treap 随机平衡二叉树
Splay 伸展树
- Scapegoat Tree 替罪羊树
块状数组,块状链表
5.* 树套树
线段树套线段树
线段树套平衡树
* 平衡树套线段树
6.可并堆
左偏树
*配对堆
- KDtree,四分树
1.4 可持久化数据结构
可持久化线段树
主席树
- 可持久化平衡树
- 可持久化块状数组
1.5 字符串相关算法及数据结构
KMP
AC 自动机
后缀数组
*后缀树
*后缀自动机
字典树 Trie
manacher
1.6 图论相关
最小生成树
prim(√)
kruskal(√)
最短路(√),次短路,K短路
spfa
dijkstra
floyd
图的连通
连通分量
割点,割边
网络流
最大流
最小割
费用流
分数规划
树相关
树上倍增(√),公共祖先(√)
树链剖分
树的分治算法(点分治,边分治,*动态?树分治)
动态树 (LCT,*树分块)
虚树
*prufer编码
拓扑排序
欧拉图
二分图
*KM算法
匈牙利算法
1.7 数学相关
(扩展)欧几里得算法(√),筛法(√),快速幂(√)
斐蜀定理
更相减损术
欧拉函数与*降幂大法
费马小定理
排列组合
lucas定理
乘法逆元(√)
矩阵乘法
数学期望与概率
博弈论
sg函数
树上删边游戏
*拉格朗日乘子法
中国剩余定理
线性规划与网络流
单纯型线性规划
辛普森积分
模线性方程组
容斥原理与莫比乌斯反演
置换群
快速傅里叶变换
*大步小步法(BSGS),扩展BSGS
1.8 动态规划
一般(√),背包(√),状压,区间,环形,树形,数位动态规划
记忆化搜索
斯坦纳树
背包九讲
斜率优化与* 四边形不等式优化
环 + 外向树上的动态规划
*插头动态规划
1.9 计算几何
计算几何基础
三维计算几何初步
梯形剖分与三角形剖分
旋转卡壳
半平面交
pick定理
扫描线
1.10 搜索相关
bfs,dfs
A* 算法
迭代加深搜索,双向广搜
1.11 特殊算法
莫队算法,*树上莫队
模拟退火
爬山算法
随机增量法
1.12 其它重要工具与方法
1.模拟(√)与贪心(?√)
二分(√),三分法(求偏导)
分治,CDQ分治
高精度
离线
ST表(√)
1.13 STL(√)
map(√)
priority_queue(√)
set
bitset
rope
1.14 非常见算法
*朱刘算法
*弦图与区间图
OI省选算法汇总及学习计划(转)的更多相关文章
- OI省选算法汇总( 转发黄学长博客 )
[原文链接] http://hzwer.com/1234.html 注 : 蓝色为已学习算法 , 绿色为不熟练算法 , 灰色为未学习算法 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. ...
- 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 高级数据结构 ...
- python、数据分析师、算法工程师的学习计划
1.前言 最近(2018.4.1)在百忙之中开通了博客,希望能够把自己所学所想沉淀下来,这篇是我开始系统学习python,成为数据分析师和算法工程师之路的计划,望有志于为同样目标奋斗的数据猿一起交流和 ...
- Python学习计划
---恢复内容开始--- Python学习计划 https://edu.csdn.net/topic/python2?utm_source=blog4 匠人之心,成就真正Python全栈工程师 ...
- Github标星过万,Python新手100天学习计划。
大数据文摘编辑部出品 作为目前最火也是最实用的编程语言,Python不仅是新手入门程序界的首选,也逐渐成为了从大厂到小厂,招牌需求list的必要一条. 当然,学Python这件事情,你可能也和文摘菌一 ...
- Github标星过万,Python新手100天学习计划,这次再学不会算我输!
作为目前最火也是最实用的编程语言,Python不仅是新手入门程序界的首选,也逐渐成为了从大厂到小厂,招牌需求list的必要一条. 当然,学Python这件事情,你可能也和文摘菌一样,已经下了一百次 ...
- 【声明】前方不设坑位,不收费!~ 我为NET狂官方学习计划
发个通知,过段时间学习计划相关的东西就出来了,上次写了篇指引文章后有些好奇心颇重的人跟我说:“发现最近群知识库和技能库更新的频率有点大,这是要放大招的节奏啊!” 很多想学习却不知道如何规划的人想要一个 ...
随机推荐
- 为代码编写稳定的单元测试 [Go]
为代码编写稳定的单元测试 本文档配套代码仓库地址: https://github.com/liweiforeveryoung/curd_demo 配合 git checkout 出指定 commit ...
- 【NXOpen.UF扩展】修改表达式
public static class UFExpEx { /// <summary> /// 修改当前部件的表达式 /// </summary> /// <param ...
- python和js分别在多行字符串中插入一行字符串
问题 一个多行字符串,"asfdb;\nwesfpjoing;\nwbfliqwbefpwqufn\nasfdwe\nsafewt\nqwern\nvar\ntgwtg\n\nftwg\n& ...
- leetcode 6/300 Z字型变换 py
目录 题目说明 方法一:利用flag 题目说明 方法一:利用flag 简单来说就是利用flag来表示方向,真的神来之笔. class Solution: def convert(self, s: st ...
- 扩展spring data jpa的repository
在我们编写代码的过程中,spring data jpa为我们的持久层提供的极大的方便,但有时spring data jpa提供的repository并不能完全满足我们开发的需求,因此就需要进行扩展.s ...
- js基础学习之"=="与"==="的区别
var a = 1; var b = 1; var c = "1"; 1. "==" 可理解为相等运算符.相等运算符比较时,会自己进行类型转换,等于什么类型就会 ...
- 嵌入式单片机之stm32串口你懂了多少!!
stm32作为现在嵌入式物联网单片机行业中经常要用多的技术,相信大家都有所接触,今天这篇就给大家详细的分析下有关于stm32的出口,还不是很清楚的朋友要注意看看了哦,在最后还会为大家分享有些关于stm ...
- Photoshop cc 绿色版 最新版 下载
Photoshop cc 绿色版 下载 Photoshop cc 绿色版 最新版下载百度网盘下载 Photoshop 下载提取码: dh6z 作为一个程序员, 不懂点基本的作图都不配"新时代 ...
- linux Segmentation faults 段错误详解
什么是段错误 下面是来自 Answers.com 的定义: A segmentation fault (often shortened to segfault) is a particular err ...
- Arthas在线java进程诊断工具 在线调试神器
tag: java 诊断 堆栈 在线调试 耗时 死锁 arthas 阿里巴巴 Arthas (阿尔萨斯) Arthas 是 Alibaba 开源的Java诊断工具,深受开发者喜爱. 官网文档:http ...