2019NOIP算法复健+学习
前言:
原本因为kma太弱,很多算法没学学了也不会用,打算设置密码给自己看。后来想了想,觉得也没有必要,既然决定了要学些东西到脑子里,就没什么好丢人的。
注:“×”意为完全没学,“O”意为学了但还不太会用的,“√”为目前基本复健成功的。
- 数据结构:
(√)线段树
(×)线段树扩展1:zkw线段树
(×)线段树扩展2:李超线段树
(√)线段树扩展3:主席树
(√)ST表——解决RMQ问题
(√)树链剖分
(√)树状数组
(√)并查集
(√)并查集小扩展:带权、扩展域、路径压缩、按秩合并
(O)Splay,fhq treap和一些奇奇怪怪的平衡树
(O)Trie
(×)CDQ分治
(√)分块
(×)分块拓展:莫队、带修莫队、树上莫队
(O)树套树我tm还不如CDQ分治
- 搜索:
(√)\(A{*}\)、\(IDA{*}\)
(√)记忆化搜索
(O)玄学剪枝
(√)BFS
(×)折半搜索
- 数学:
(√)线性筛、埃氏筛
(√)概率、期望
(√)扩展欧几里得
(√)莫比乌斯反演
(×)组合计数
(√)高斯消元
(×)BSGS、exBSGS
(×)CRT、exCRT
(×)容斥原理
(×)矩阵相关应用
(×)FFT、NTT
(×)康托展开及逆康托展开
(√)导数及其应用
(√)微积分
- 计算几何:
(×)旋转卡壳
(√)二维凸包
(×)三维凸包
(×)半平面交
(×)面积计算
(×)平面最近点对
- 字符串:
(√)KMP
(×)扩展KMP
(×)FFT求解字符串匹配
(√)manacher
(√)AC自动机
(×)后缀数组、后缀自动机
(√)字符串hash
- 动态规划:
(√)经典模型(LIS、LCS、背包等)
(√)线性DP
(√)区间DP
(√)树形DP
(√)环形DP
(O)有后效性DP
(√)状压DP
(√)单调队列优化DP
(×)数据结构优化DP
(O)斜率优化
(√)四边形不等式
(×)计数类DP
(√)数位DP
- 图论:
(√)dijkstra
(√)SPFA
(√)Kruskal
(√)基环树
(√)倍增LCA
(O)差分约束
(√)Tarjan(缩点、LCA、割点、割边、双连通)
(√)二分图染色、匹配(hungary)及扩展
(O)网络流最大流、费用流
(×)k短路
- 游戏策略:
(×)博弈论(Nim&Anti-Nim)
(×)SG函数
奇技淫巧常用技巧:
(×)fread读优
(√)对拍
(×)(随机算法)随机化贪心、模拟退火、爬山、粒子群优化
(×)乱搞出奇迹
(√)动态开点
(√)滚动数组
(×)循环展开与多路并行
(√)访问连续内存
2019NOIP算法复健+学习的更多相关文章
- 关联规则算法Apriori的学习与实现
转自关联规则算法Apriori的学习与实现 首先我们来看,什么是规则?规则形如"如果-那么-(If-Then-)",前者为条件,后者为结果.关联规则挖掘用于寻找给定数据集中项之间的 ...
- Netflix工程总监眼中的分类算法:深度学习优先级最低
Netflix工程总监眼中的分类算法:深度学习优先级最低 摘要:不同分类算法的优势是什么?Netflix公司工程总监Xavier Amatriain根据奥卡姆剃刀原理依次推荐了逻辑回归.SVM.决策树 ...
- Raft算法,从学习到忘记
Raft算法,从学习到忘记 --Raft算法阅读笔记. --Github 概述 说到分布式一致性算法,可能大多数人的第一反应是paxos算法.但是paxos算法一直以来都被认为是难以理解,难以实现.S ...
- 牛客网《BAT面试算法精品课》学习笔记
目录 牛客网<BAT面试算法精品课>学习笔记 牛客网<BAT面试算法精品课>笔记一:排序 牛客网<BAT面试算法精品课>笔记二:字符串 牛客网<BAT面试算法 ...
- 数论算法 剩余系相关 学习笔记 (基础回顾,(ex)CRT,(ex)lucas,(ex)BSGS,原根与指标入门,高次剩余,Miller_Rabin+Pollard_Rho)
注:转载本文须标明出处. 原文链接https://www.cnblogs.com/zhouzhendong/p/Number-theory.html 数论算法 剩余系相关 学习笔记 (基础回顾,(ex ...
- 用Python实现随机森林算法,深度学习
用Python实现随机森林算法,深度学习 拥有高方差使得决策树(secision tress)在处理特定训练数据集时其结果显得相对脆弱.bagging(bootstrap aggregating 的缩 ...
- SparkMLlib分类算法之决策树学习
SparkMLlib分类算法之决策树学习 (一) 决策树的基本概念 决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风 ...
- 【数据结构与算法Python版学习笔记】引言
学习来源 北京大学-数据结构与算法Python版 目标 了解计算机科学.程序设计和问题解决的基本概念 计算机科学是对问题本身.问题的解决.以及问题求解过程中得出的解决方案的研究.面对一 个特定问题,计 ...
- 数据结构与算法C++描述学习笔记1、辗转相除——欧几里得算法
前面学了一个星期的C++,以前阅读C++代码有些困难,现在好一些了.做了一些NOI的题目,这也是一个长期的目标中的一环.做到动态规划的相关题目时发现很多问题思考不通透,所以开始系统学习.学习的第一本是 ...
随机推荐
- Mate Translate的特色功能phrasebook 常用语手册介绍
Mate Translate是Mac os系统上一款多国语言即时翻译工具,支持103种语言之间的即时互译,还可以在你的所有设备之间轻松同步.Mate Translate 不但推出了适应各个平台使用的客 ...
- QT之QCustomPlot(一)
QDetectPlot::QDetectPlot(QWidget *parent) : QCustomPlot(parent) { QVector<), y(); // initialize w ...
- Android中的surfaceHolder.lockCanvas(null)返回为null详解
对于新手学习SurfaceView的时候获取lockCanvas的时候总是返回null的问题很是纠结 canvas = surfaceHolder.lockCanvas(new Rect(0, 0, ...
- php linux下安装xml扩展
1.进入PHP安装源码包,找到ext下的ftp,进入 cd /home/local/php-5.6.25/ext/xml 2./usr/local/php/bin/phpize 3../configu ...
- js 将字符串当作js表达式执行方法
听同事说了一个需求.他有一个数据对象obj,接口会给他返回一个索引key,这个key长度不固定,根据这个key去修改obj对应的值. 举个例子: let obj={"level1" ...
- PHP中关于Phar的学习
什么是phar 一个PHP程序往往是由多个文件组成的,如果能够集中为一个文件来分发和运行是很方便的.phar便应运而生.大概跟java的jar文件是差不多类似的.但是php的phar文件是可以由php ...
- 机器学习中python的有关使用技巧【创建虚拟环境、jupyter的kernel修改】
1.创建虚拟环境<在原来基础上建立> *注:(这里是python2.python3环境共存,我要创建一个python3的虚拟环境) 一.先安装虚拟环境变量: pip3 install -U ...
- Mina(一)
配置log4j注意事项: Log4J 1.2 users: slf4j-api.jar, slf4j-log4j12.jar, and Log4J 1.2.x slf4j-log4j*.jar要对应 ...
- Django框架(四)—— 路由控制:有名/无名分组、反向解析、路由分发、名称空间、伪静态、APPEND_SLASH、不同版本的Django区别
目录 路由控制 一.简单路由配置 二.无名分组 三.有名分组 四.反向解析 五.路由分发 六.名称空间(一般不使用) 七.伪静态 八.Django 2.x和Django 1.x 路由层区别 九.APP ...
- 021_IO流
IO流 I——input 输入 O——Output 输出 文件 File 所有文件类的父类 创建方式 File file = new File("文件路径"); 文件对象常用的方法 ...