- 数据结构、数据类型、逻辑结构和物理存储结构
- 算法时间复杂度:评价效率方法、算法执行时间、时间复杂度、空间复杂度
- 算法描述:算法五个基本特性、优秀算法的特性、算法描述方法
- 递归:递归转非递归(循环形式、栈形式)
- 哈希:散列函数、哈希冲突、哈希构造方法、冲突处理
- 搜索:静态查找(顺序查找、折半查找、分块查找)、动态查找(二叉排序树、平衡二叉树)
- 排序:稳定性、插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序、归并排序、基数排序
线性结构#
- 线性表:插入、删除、查找
- 链表:插入、删除、查找
- 栈:压栈、出栈、读栈、顺序栈和链式栈、表达式求值和转换
- 队列:队列操作、顺序和链式、循环队列、优先队列、
- 字符串:C++内置函数、基本操作、模式匹配、KMP
- 数组:多维数组、对称/对角/稀疏矩阵的压缩存储、系数矩阵快速转置、十字链表、广义表
- 树:基本概念、满 $k$ 叉树性质、树的表示、存储结构
- 二叉树:
- 基本概念、表达式树
- 满二叉树和完全二叉树的性质
- 存储方式(顺序存储、链式存储)
- 二叉树的遍历(先序、中序、后序)的(递归、非递归)实现
- 通过遍历序列来恢复二叉树,及其非递归实现
- 线索二叉树
- 哈夫曼树
- 堆:定义、性质、堆调整算法、插入、删除
- 图的基本概念、存储表示(邻接矩阵、邻接表、十字链表)
- 图的遍历(DFS、BFS)及其遍历树
- 强联通分量、Kosaraju
- 生成树、最小生成树、Kruskal、Prim、并查集
- 最短路、Dijkstra、Floyd
- 有向无环图、拓扑排序、关键路径