noip提高组复赛所需掌握的东西

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了noip提高组复赛所需掌握的东西相关的知识,希望对你有一定的参考价值。

1、排序算法(快排、选择、冒泡、堆排序、二叉排序树、桶排序)
2、DFS/BFS 也就是搜索算法,剪枝务必要学!
学宽搜的时候再复习一下哈希表
3、树
①遍历
②二叉树
③二叉排序树(查找、生成、删除)
④堆(二叉堆、* 左偏树、堆排序)
* ⑤线段树(与RMB、树状数组的比较)
6.Trie树
4、图(图论建模)
①最小生成树
②最短路径
③计算图的传递闭包
④连通分量(其中要掌握并查集技术)
* 强连通分量
⑤拓扑排序、关键路径
* ⑥哈密尔顿环
* ⑦欧拉回路
⑧Bell-man Ford、SPFA(能解决负权回路)
* ⑨二分图(匈牙利算法)
5、动态规划(背包问题只是其中一种)
①线性动规
②区间动规
③树形动规
* ④图形动规
6、分治(掌握了动规分治就好学了)
7、贪心
8、位运算(可以用来进行优化)

差不多就这些了,其中有一些前面加‘ * ’ 的为不一定要掌握的,LZ可按这张表查漏补缺。
求LZ采纳,求最佳!!谢了!!
参考技术A 【模拟】
高精度加、减、乘,除应该不需要
表达式求值(中缀转后缀,栈的操作)

【图论】
图的表示:邻接矩阵,邻接表,边表
单源最短路:dijkstra(O(n2)),bellman(spfa优化,O(km))
传递闭包和floyd
最小生成树算法:prim(O(n2)),kruskal(O(m log m))
拓扑排序(O(m))
欧拉路(边一次)
汉密尔顿回路(点一次)

强连通分量
匹配算法(最大匹配,最小点覆盖,最小路径覆盖,最大独立集)
网络流算法(最大流dinic,最小费用流spfa)
差分约束系统

【树】
树的先序、中序、后序遍历
树中的最长路(两遍bfs)
特殊的树:二叉树
树形动态规划
并查集
字母树

【搜索】
深搜,一般需要剪枝,有可行性剪枝和最优性剪枝两种经常考。还有迭代深搜。
宽搜,双向广搜,估价函数。

【动态规划】
背包问题:01背包,无限背包,多重背包,有依赖的背包,二维费用背包。(参照背包九讲)
树形动态规划
状态压缩的动态规划
最长不下降子序列
最长公共子序列和最长公共子串
动态规划的优化(快速幂,改变状态,优化转移,单调性,四边形不等式)

【贪心】
也有一些经典的模型,如取线段的问题,一般从小规模数据找规律,再适当的有一些证明。

【排序】
选择排序、冒泡排序
快速排序(快排)、堆排序
插入排序
希尔排序
归并排序

【分治】
二分查找
二分答案(这个好像不是分治)

【串】
串的基本操作
Kmp(字串匹配)
Kmp扩展
AC自动机

【数论】
欧几里得算法,最大公约数和最小公倍数
判断质数(sqrt式与筛法求素数)
进制转换

同余定理
中国剩余定理
概率与期望
欧拉函数

【几何】
线段相交
凸包(水平序和极角序)
半平面交

【有序表】
顺序表、链表、块状链表
线段树及其基本操作
树状数组
平衡树(sbt、treap、splay)
后缀数组

【其他】
Hash
随机化算法
矩形切割(与线段树的比较)
Lca(最近公共祖先)与rmq(区间最值)
高斯消元
参考技术B 首先是一些相对较复杂的模拟题,再有可能出现较简单的DP,其他就是些贪心,DFS,BFS,或一些图论题。

以上是关于noip提高组复赛所需掌握的东西的主要内容,如果未能解决你的问题,请参考以下文章

noip需要准备哪些方面的基础知识。复赛需要做哪些类型的题目(提高组)?

noip提高组的C语言历届复赛试题

noip2010提高组复赛第一题(被大牛们称为水题)不会做!

noip需要准备哪些方面的基础知识.复赛需要做哪些类型的题目(提高组)?

如何评价NOIP2015提高组复赛试题

noip2010普及组复赛接水问题