以下是OI省选前的数据结构与算法整理,可能还不是很全面。但是已经是全网相对比较全面的了。所有标记为“基础”“进阶”“中级”“提高”的知识为近些年来NOIp考察的内容,需重点掌握。

所有“高级”部分为NOI的考点,省选需要。

不分条的知识点则是省选知识点。

其他的一些算法和数据结构可能就太小众了,就参见Candy?或_rqy的博客,以及TopCoder等网站的教程吧。

每一小项前面的方括号是Markdown里面的checkbox,然而并不能用。悲し。

  1. Coder必备类
    1. [ ] LaTeX
    2. [ ] Vim或Emcas的使用
    3. [ ] Markdown
    4. [ ] Linux基础
  2. OI知识
    1. 图论
      1. 基础
        1. [x] 图的存储
        2. [ ] 图的连通性
        3. [ ] 连通分量
        4. 各种各样的图
          1. [ ] 欧拉图
          2. [ ] 欧拉回路
        5. 最短路相关
          1. [x] Dijkstra
          2. [x] Floyd(我现在还不会Floyd你信吗?)
          3. [x] 最短路计数
        6. [ ] Tarjan
        7. 二分图(网络流算法初步?)
          1. [ ] 匈牙利算法
          2. [ ] KM算法
        8. [ ] 拓扑排序
      2. 高级
        1. [ ] 次短路
        2. [ ] K短路
        3. [ ] 割点、割边
        4. [ ] 拆点、拆边
    2. 树论
      1. 基础
        1. [ ] DFS序
        2. [ ]倍增LCA
        3. [ ] MST(Kruskal)
      2. 高级
        1. [ ] 树链剖分
        2. 树分治
          1. [ ] (动态)点分治
          2. [ ] (动态)边分治
        3. 动态树
          1. [ ] LCT
          2. [ ] 树分块
        4. [ ] 虚树
        5. [ ] Prufer编码
    3. 动态规划
      1. 基础
        1. [ ] 序列型DP
        2. [ ] 背包型DP
        3. [ ] 区间型DP
        4. [ ] 环形DP
        5. [ ] 棋盘型DP
        6. [ ] 普通多维DP
      2. 进阶
        1. [ ] 复杂的多维DP
        2. [ ] 多线程DP
        3. [ ] 数位DP
        4. [ ] 期望DP
        5. [ ] 状压DP基础
      3. 高级
        1. [ ] 树形DP
        2. [ ] DP的优化
        3. [ ] 状压DP Advanced
        4. [ ] 插头DP
        5. [ ] 博弈论DP
        6. [ ] DP套DP
    4. 数据结构
      1. 初步
        1. [x] 数组
        2. [x] 链表
        3. [x] 栈
        4. [x] 队列
        5. [x] 堆
      2. 基础
        1. [x] 双向链表
        2. [ ] 单调栈
        3. [x] 双端队列(deque)
        4. [ ] 单调队列
      3. 中级
        1. 并查集
          1. [x] 路径压缩
          2. [ ] 按秩合并
          3. [ ] 带权并查集
        2. hash表
          1. 按膜模法
            1. [ ] 自然溢出
            2. [ ] 双hash
          2. 按防碰撞方式
            1. [ ] 开放寻址法
            2. [ ] 拉链法
        3. [ ] 树状数组
        4. [ ] 线段树
          1. [ ] 普通线段树
          2. [ ] zkw线段树
        5. [ ] 块状数组
        6. [ ] 块状链表
      4. 高级
        1. 线段树
          1. [ ] 线段树的合并
          2. [ ] 线段树的分裂
        2. 平衡树
          1. Treap
            1. [ ] 无旋Treap(fhq?)
            2. [ ] 普通Treap
          2. [ ] Splay
          3. [ ] 替罪羊树
          4. [ ] 红黑树(可能不会学)
          5. [ ] 朝鲜树等各种各样神奇的东西
        3. 树套树
          1. [ ] 线段树套线段树
          2. [ ] 线段树套平衡树
          3. [ ] 平衡树套线段树
        4. 可并堆
          1. [ ] 斜堆
          2. [ ] 斐波那契堆
          3. [ ] 左偏树
          4. [ ] 配对堆
        5. [ ] K-D树
        6. [ ] 四分树
        7. 可持久化数据结构
          1. [ ] 可持久化数组
          2. [ ] 可持久化并查集
          3. [ ] 可持久化线段树(主席树)
          4. [ ] 可持久化主席树
          5. [ ] 可持久化平衡树(Treap)
          6. [ ] 可持久化块状数组
    5. 网络流
      1. 最大流
        1. [ ] Ford-Fulkerson方法
        2. [ ] Edmonds-Karp算法
        3. [ ] Dinic算法
        4. [ ] ISAP算法
      2. 最小割
        1. [ ] Stoer-Wagner算法
        2. [ ] Karger算法
      3. 费用流
        1. [ ] Bellman-Ford算法(诶?)
        2. [ ] zkw算法
      4. [ ] 分数规划
    6. 字符串
      1. 基础
        1. [ ] hash
        2. [ ] KMP算法
        3. [ ] BM算法
        4. [ ] Sunday算法
        5. [ ] Trie树
      2. 提高
        1. [ ] AC自动机
        2. [ ] Manacher算法
      3. 高级
        1. [ ] 后缀数组
        2. [ ] 后缀树
        3. [ ] 后缀自动机
        4. [ ] 可持久化Trie树
    7. 数论
      1. 基础
        1. [-] (扩展)欧几里得算法
        2. [ ] 快速幂
        3. [ ] 素数筛法(欧拉筛)
        4. [ ] 裴蜀定理
        5. [ ] 欧拉函数
        6. 排列组合
          1. [x] 杨辉三角
          2. [ ] (扩展)Lucas定理
        7. [ ] 乘法逆元
        8. 矩阵相关
          1. [x] 矩阵乘法
          2. [x] 矩阵快速幂
        9. [ ] 期望与概率基础
        10. [ ] 容斥原理基础
      2. 高级
        1. [ ] 费马小定理
        2. [ ] 降幂大法
        3. 博弈论
          1. [ ] SG定理
          2. [ ] SG函数(Nim取石子游戏)
          3. [ ] SJ定理
          4. [ ] 树上删边游戏
          5. [ ] 组合游戏
        4. [ ] 拉格朗日乘子法
        5. [ ] 中国剩余定理
        6. 线性规划
          1. [ ] 单纯型线性规划
          2. [ ] 线性规划与网络流
        7. [ ] 辛普森积分
        8. [ ] 模线性方程组
        9. [ ] 莫比乌斯反演
        10. 容斥原理进阶
          1. [ ] 置换群
          2. [ ] Burnside引理
          3. [ ] Polya定理
        11. [ ] 快速傅里叶变换
        12. [ ] 快速沃尔什变换
        13. [ ] 快速数论变换
    8. 计算几何
      1. [ ] 计算几何基础概念(点、直线、线段等的表示,关系的判定)
      2. [ ] 三维计算几何初步
      3. [ ] 凸包
      4. [ ] 旋转卡壳
      5. [ ] 半平面交
      6. [ ] Pick定理
      7. [ ] 三角形剖分与梯形剖分
      8. [ ] 扫描线
    9. 搜索
      1. 基础
        1. [x] 枚举
        2. [ ] 递归
        3. [ ] DFS
        4. [ ] BFS
        5. [ ] 记忆化搜索
      2. 高级
        1. [ ] A*算法
        2. [ ] 迭代加深搜索
        3. [ ] 双向BFS
        4. [ ] 斯坦纳树
        5. [ ] Meet-in-the-middle
    10. 其他重要算法
      1. 基础
        1. [ ] 模拟
        2. [ ] 贪心
        3. [ ] 二分法
        4. [ ] 三分法
        5. [ ] 分治
        6. [ ] 高精度
      2. 提高
        1. [ ] ST表
        2. [ ] 浮水法
        3. [ ] 离散化
      3. 高级
        1. [ ] 离线
        2. [ ] CDQ分治
        3. [ ] 差分约束系统
    11. 暴力算法与数据结构
      1. [ ] 分块
      2. [ ] 莫队
      3. [ ] 带修改莫队
      4. [ ] 树上莫队
      5. [ ] 树上带修改莫队
    12. 随机化算法
      1. [ ] 爬山算法
      2. [ ] 随机增量法
      3. [ ] 模拟退火
      4. [ ] 遗传算法
    13. STL
      1. 基础
        1. [x] vector
        2. [x] string
        3. [x] priority_queue
        4. [x] set&map
        5. [x] 常见数据结构
      2. 高级
        1. [ ] bitset
        2. [ ] rope
        3. [ ] pb_ds
    14. 非常见算法
      1. [ ] 朱刘算法
      2. [ ] 弦图与区间图
      3. [ ] 三维偏序

初步计划2月24日(~14周*7=98天)前复习完NOIp知识点86个(明显的需要提速,省选内容不可能一天学一个知识点)。

剩下的内容(104个知识点)在2月25日到7月28日(~23周*7=161天)完成。

第一部分Coder必备看看就好了。

以上列表打x的为已经学会的(非常熟练)。划-的为部分完成的,空着的表示尚未完成。

所有新学的东西都会有个博客来整理一下吧。当然以前会了的东西那就看情况再说。

$\text{\color{red}{萌萌哒}}$

Plan & Future的更多相关文章

  1. P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1

    P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1       May ...

  2. Cloud Design Patterns: Prescriptive Architecture Guidance for Cloud Applications

    January 2014 Containing twenty-four design patterns and ten related guidance topics, this guide arti ...

  3. KIP-382: MirrorMaker 2.0

    Status Motivation Public Interfaces Proposed Changes Remote Topics, Partitions Aggregation Cycle det ...

  4. Asynchronous and Distributed Programming in R with the Future Package

    Every now and again someone comes along and writes an R package that I consider to be a 'game change ...

  5. The future of scripting in Unity

    Recently we talked about Unity and WebGL . In that post we briefly spoke about how scripting works i ...

  6. 第七篇:Spark SQL 源码分析之Physical Plan 到 RDD的具体实现

    /** Spark SQL源码分析系列文章*/ 接上一篇文章Spark SQL Catalyst源码分析之Physical Plan,本文将介绍Physical Plan的toRDD的具体实现细节: ...

  7. 【转】The most comprehensive Data Science learning plan for 2017

    I joined Analytics Vidhya as an intern last summer. I had no clue what was in store for me. I had be ...

  8. Building An Effective Marketing Plan

    “New ideas are a dime a dozen,” observes Arthur R. Kydd, “and so are new products and new technologi ...

  9. 【转】Automated Testing Detail Test Plan

    Automated Testing Detail Test PlanAutomated Testing DTP Overview This Automated Testing Detail Test ...

随机推荐

  1. [DevExpress]DevExpress的安装与使用

    一.下载安装文件 依据自己的须要选择不同的版本号.下面为15.1 安装时选择自己须要的模块进行安装,之后进行激活,购买授权或者"其它方式". 二.安装完 在VSIDE工具栏会添加下 ...

  2. 纯css3实现美化复选框和手风琴效果(详细)

    关键技术点和原理: 原理就是把 checkbox或 radio 给隐藏掉   ,然后给选框 绑定一个label标签. 然后用label标签作为容器,在里面放一个:before或一个after 用bef ...

  3. iOS开发个人开发账号的证书详细使用及介绍

    本人也和大家一样在学习iOS的开发,在开发当中最烦的就是证书出问题,主要是没有理解透证书的含义,因此查阅了一些资料,才对证书有了一定的认识,本文章就是介绍个人的个人理解,有不对的地方大加可以留言提醒, ...

  4. [JSOI 2016] 灯塔

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=4850 [算法] 首先对不等式进行移项 : hj <= hi + p - sqr ...

  5. Android下载资源

    下面提供了源码下载地址,供有兴趣的朋友下载, android音乐播放器源码   由于本人才疏学浅,有很多地方不够完善,希望大家指证. 免费下载地址在 http://linux.linuxidc.com ...

  6. 10.11 NOIP模拟题(1)

    /* 离散化 差分 */ #include<bits/stdc++.h> #define N 4000007 using namespace std; int n,ans; int tmp ...

  7. Lightoj 1020 - A Childhood Game (博弈)

    题目链接: 1020 - A Childhood Game 题目描述: Alice和Bob在玩弹珠游戏,两人轮流拿走弹珠,每次只能拿走一个或者两个,当Alice作为先手时谁拿走最后一个就是输家,而Bo ...

  8. FJOI2019退役记

    day1 不意外地一点都不紧张,早就感觉没有机会了吧 进场非常从容地读完了三道题,开始写t1暴力,接着就开始自闭,不知道该开t2还是t3,最后先开了t3,想了想这不是选两条不相交的链吗,这个暴力不是林 ...

  9. 每天学点linux命令之nc

    nc is NetCat.素以短小精悍著称的网络工具包.主要用来开放的扫描端口(黑客或者OSAdmin的最爱),不同主机之间传输文字 | 文件. http://blog.csdn.net/zhangx ...

  10. P1160 队列安排

    题目描述 一个学校里老师要将班上N个同学排成一列,同学被编号为1-N,他采取如下的方法: 1.先将1号同学安排进队列,这时队列中只有他一个人: 2.2-N号同学依次入列,编号为i的同学入列方式为:老师 ...