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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了noip需要准备哪些方面的基础知识.复赛需要做哪些类型的题目(提高组)?相关的知识,希望对你有一定的参考价值。

参考技术A Noip算法(小超)
以下用n表示图的点数,m表示边数,k表示一个常数,log均以2为底数,存储边都采用边表.
【模拟】
高精度加、减、乘,除应该不需要
表达式求值(中缀转后缀,栈的操作)
【图论】
图的表示:邻接矩阵,邻接表,边表
单源最短路: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(区间最值)
高斯消元

以上是关于noip需要准备哪些方面的基础知识.复赛需要做哪些类型的题目(提高组)?的主要内容,如果未能解决你的问题,请参考以下文章

参加noip需要哪些知识

noip关于复赛要求的问题

面试前都有哪些需要准备的东西?

noip复赛会考哪些类型的题目?该如何复习?

你问我答,准备面试需要做哪些技术储备,面试官更加关心什么方面的技术点?

参加全国青少年信息学奥林匹克竞赛需要具备哪些方面的知识?