CSP-S提高级大纲

上一次文章:
CSP-J第一轮 入门级大纲
提高级的大纲来了,快来查漏补缺吧。

如果有问题请私信,谢。

说明

格式说明:

"【】"内的数字代表知识点难度,数字越高,代表难度越高。

例子:

【6】并查集。

提高级

2.1 基础知识与编程环境

  1. 【5】Linux系统终端中常用的文件与目录操作命令
  2. 【5】Linux系统下常见文本编辑工具的使用
  3. 【5】g++、gcc等编译器与相关编译选项
  4. 【5】在Linux系统终端中运行程序,使用time命令查看程序用时
  5. 【5】调试工具GDB的使用

2.2 C++程序设计

1. 类(class)
  • 【6】类的概念及简单应用
  • 【6】成员函数和运算符重载
2. STL模板
  • 【5】容器(container)和迭代器(iterator)
  • 【5】对(pair)、元组(tuple)
  • 【5】集合(set)、多重集合(multiset)
  • 【5】双端队列(deque)、优先队列(priority_queue)
  • 【5】映射(map)、多重映射(multimap)
  • 【5】算法模板库中的常用函数

2.3 数据结构

1. 线性结构
  • 【5】双端栈
  • 【5】双端队列
  • 【5】单调队列
  • 【6】优先队列
  • 【6】ST表(Sparse Table)
2. 集合与森林
  • 【6】并查集
  • 【6】树的孩子兄弟表示法
3. 特殊树
  • 【6】二叉堆
  • 【6】树状数组
  • 【6】线段树
  • 【6】字典树(Trie树)
  • 【7】笛卡尔树
  • 【8】平衡树:AVL、treap、splay等
4. 常见图
  • 【5】稀疏图
  • 【6】偶图(二分图)
  • 【6】欧拉图
  • 【6】有向无环图
  • 【7】连通图与强连通图
  • 【7】双连通图

2.4 算法

1. 复杂度分析
  • 【6】时间复杂度分析
  • 【6】空间复杂度分析
2. 算法策略
  • 【6】离散化
3. 基础算法
  • 【6】分治算法
4. 排序算法
  • 【5】归并排序
  • 【5】快速排序
  • 【6】堆排序
  • 【5】桶排序
  • 【6】基数排序
5. 字符串相关算法
  • 【6】字符串匹配:KMP算法
6. 搜索算法
  • 【6】搜索的剪枝优化
  • 【6】记忆化搜索
  • 【7】启发式搜索
  • 【7】双向广度优先搜索
  • 【7】迭代加深搜索
7. 图论算法
  • 【6】最小生成树:Prim和Kruskal等算法
  • 【7】次小生成树
  • 【6】单源最短路:Bellman-Ford、Dijkstra、SPFA等算法
  • 【7】单源次短路
  • 【6】Floyd-Warshall算法
  • 【6】有向无环图的拓扑排序
  • 【6】欧拉道路和欧拉回路
  • 【6】二分图的判定
  • 【7】强连通分量
  • 【7】割点、割边
  • 【6】树的重心、直径、DFS序与欧拉序
  • 【6】树上差分、子树和与倍增
  • 【6】最近公共祖先
8. 动态规划
  • 【6】树型动态规划
  • 【7】状态压缩动态规划
  • 【8】动态规划的常用优化

2.5 数学与其他

1. 初等数学
  • 【5】代数(高中部分)
  • 【6】几何(高中部分)
2. 初等数论
  • 【5】同余式
  • 【7】欧拉定理和欧拉函数
  • 【7】费马小定理
  • 【7】威尔逊定理
  • 【7】裴蜀定理
  • 【7】模运算意义下的逆元
  • 【7】扩展欧几里得算法
  • 【7】中国剩余定理
3. 离散与组合数学
  • 【6】多重集合
  • 【6】等价类
  • 【6】多重集上的排列
  • 【6】多重集上的组合
  • 【6】错排列、圆排列
  • 【6】鸽巢原理
  • 【6】二项式定理
  • 【7】容斥原理
  • 【7】卡特兰(Catalan)数
4. 线性代数
  • 【5】向量与矩阵的概念
  • 【6】向量的运算
  • 【6】矩阵的初等变换
  • 【6】矩阵的运算:加法、减法、乘法与转置
  • 【6】特殊矩阵的概念:单位阵、三角阵、对称阵和稀疏矩阵
  • 【7】高斯消元法
相关推荐
兰.lan2 小时前
【黑马ai测试】Day01课堂笔记+课后作业
软件测试·笔记·python·ai·单元测试
熊猫_豆豆2 小时前
Python 基于Dlib和OpenCV实现人脸融合算法+代码
图像处理·python·算法·人脸融合
波特率1152002 小时前
C++中类的const与static关键字修饰函数与变量辨析
开发语言·c++·
添尹2 小时前
Go语言基础之基本数据类型
开发语言·后端·golang
Book思议-2 小时前
【数据结构实战】双向链表:在指定位置插入数据
c语言·数据结构·算法·链表
lightqjx2 小时前
【算法】前缀和
c++·算法·leetcode·前缀和
Jack.Jia2 小时前
GPS原理笔记二——GPS信号和导航电文
笔记
窝子面2 小时前
LeetCode练题三:链表
算法·leetcode·链表
白昼流星!2 小时前
顺序表与单链表的数据存储差异: 为何顺序表元素用指针,链表节点数据不用?
数据结构·链表·顺序表