3. 数组
(1)一维数组和二维数组的存储;
(2)矩阵的压缩存储的基本概念;
(3)对称矩阵、对角矩阵以及三角矩阵的压缩存储。
4.堆栈与队列
(1)堆栈与队列的基本概念与基本操作;
(2)堆栈与队列的顺序存储结构与链式存储结构的构造原理;
(3)在不同存储结构的基础上对堆栈与队列实施插入与删除等基本操作的
算法设计;
(4)堆栈和队列在解决实际问题中应用。
5.树与二叉树
(1)树与二叉树的基本概念、基本特征和名词术语;
(2)完全二叉树与满二叉树的基本概念,二叉树的基本性质及其应用;
(3)二叉树的顺序存储结构与二叉链表存储结的基本原理;
(4)二叉树的前序遍历、中序遍历、后序遍历和按层次遍历,重点是二叉
树在以二叉链表作为存储结构基础上各种遍历算法(包括非递归算法)的设计与
应用;
(5)二叉排序树的基本概念、建立(插入)、查找以及平均查找长度(ASL)
的计算。
6.图
(1)图的基本概念、名词术语;
(2)图的邻接矩阵存储方法和邻接表(含逆邻接表)存储方法的构造原理
及特点;
(3)图的深度优先搜索与广度优先搜索;
(4)最小(代价)生成树、最短路径、AOV 网与拓扑排序的基本概念。
7.文件及查找
(1)顺序查找法以及平均查找长度(ASL)的计算;
(2)折半查找法以及平均查找长度(ASL)的计算,包括查找过程对应的
“判定树”的构造。
(3)散列(Hash)表的构造、散列函数的构造,散列冲突的基本概念、处
理散列冲突的基本方法以及散列表的查找和平均查找长度的计算。
8.内排序
(1)排序的基本概念,各种内排序方法的基本原理和特点,包括排序过程
中进行的元素之间的比较次数,排序总趟数、排序稳定性以及时间复杂度与空间
复杂度计算;
(2)插入排序法(含折半插入排序法);
(3)选择排序法;
(4)冒泡排序法;
(5)谢尔排序法;
(6)快速排序法;
(7)堆积排序法,包括堆积的定义与构造。
9.C 程序的基本结构
(1)C 语言的特点;
(2)C 程序的基本组成。
10.C 语言常量、变量和表达式
(1)常量:数字常量、字符常量和字符串字面量;
(2)变量:变量名和变量类型,变量的赋值和类型转换;
(3)算术表达式:算术运算符、增量(自增)和减量(自减)运算符、位
运算和复合赋值运算符;
(4)强制类型转换;
(5)数据输入/输出函数;
(6)常量的符号表示方法:常量宏、枚举常量。
11.C 语言条件语句和开关语句
(1)关系运算符和逻辑运算符;
(2)运算符的优先级;
(3)逻辑表达式;
(4)条件语句:条件、复合语句、条件语句的嵌套和级联、条件运算符和
条件表达式;
(5)switch 语句。
12.C 语言循环语句和 goto 语句
(1)while 语句、for 语句和 do while 语句;
(2)循环语句的选择和使用;
(3)逗号表达式;
(4)循环语句的嵌套;
(5)循环中的非常规控制(break 和 continue)、goto 语句。
13.C 语言函数
(1)函数的基本概念;
(2)函数的调用、结构和定义;
(3)函数的调用关系和返回值;
(4)局部变量和全局变量;
(5)函数参数的传递;
(6)标准库函数;
(7)递归函数;
14.C 语言数组
(1)一维数组:定义和初始化、复制、数组参数;
(2)字符串和字符数组;
(3)标准字符串函数;
(4)二维数组:定义、引用、访问、数组参数。
15.C 语言指针
(1)地址与指针;
(2)指针变量:定义和赋值、访问、参数和返回值;
(3)指针运算:指针与整数的加减、指针相减和比较、强制类型转换和 void*
指针、不合法的指针运算、指针类型与数组类型的差异;
(4)指针与数组;
(5)指向二维数组的指针、多重指针和指针数组;